multiwoven-integrations 0.1.2 → 0.1.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/assets/images/destination/facebook.svg +23 -0
- data/assets/images/destination/klaviyo.svg +33 -0
- data/assets/images/destination/salesforce.svg +18 -0
- data/assets/images/destination/slack.svg +33 -0
- data/assets/images/source/bigquery.svg +1 -0
- data/assets/images/source/redshift.svg +15 -0
- data/assets/images/source/snowflake.svg +10 -0
- data/lib/multiwoven/integrations/core/utils.rb +2 -1
- data/lib/multiwoven/integrations/destination/facebook_custom_audience/config/meta.json +13 -14
- data/lib/multiwoven/integrations/destination/klaviyo/config/meta.json +13 -14
- data/lib/multiwoven/integrations/destination/salesforce_crm/client.rb +9 -8
- data/lib/multiwoven/integrations/destination/salesforce_crm/config/meta.json +13 -14
- data/lib/multiwoven/integrations/destination/slack/client.rb +125 -0
- data/lib/multiwoven/integrations/destination/slack/config/catalog.json +71 -0
- data/lib/multiwoven/integrations/destination/slack/config/meta.json +14 -0
- data/lib/multiwoven/integrations/destination/slack/config/spec.json +22 -0
- data/lib/multiwoven/integrations/rollout.rb +2 -1
- data/lib/multiwoven/integrations/source/bigquery/config/meta.json +13 -14
- data/lib/multiwoven/integrations/source/redshift/config/meta.json +13 -14
- data/lib/multiwoven/integrations/source/snowflake/config/meta.json +13 -14
- data/lib/multiwoven/integrations.rb +2 -0
- data/multiwoven-integrations.gemspec +2 -0
- metadata +42 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ddbec3ce3a78c7a61e8a084fb8f624c1b4db681535cee238aa76f7447eb31307
|
4
|
+
data.tar.gz: 8d5a68dada611107fa81800c2d51c6fce37a34fe345af59b166fb6b5a2c63e70
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0a4963af3e38b2236338e8b08b097fc81ffd6dc7f94c82bc212b73b4817fca67fdfd6a9674827bb785c5deeaa52ca8212e66477229c24efe918b151553837403
|
7
|
+
data.tar.gz: 6249ba5bd2629711e63f246999eb6ac36fa2876ea50932f7b839e471a0a8d21fe8a43875f00d42c05b626fcf81e4e436a34dbcdef1cae0144aead56e134b1679
|
@@ -0,0 +1,23 @@
|
|
1
|
+
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1365.3333 1365.3333" height="1365.3333" width="1365.3333" xml:space="preserve" id="svg2" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink">
|
2
|
+
<metadata id="metadata8">
|
3
|
+
<rdf:RDF>
|
4
|
+
<cc:Work rdf:about="">
|
5
|
+
<dc:format>
|
6
|
+
image/svg+xml
|
7
|
+
</dc:format>
|
8
|
+
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage">
|
9
|
+
</dc:type>
|
10
|
+
</cc:Work>
|
11
|
+
</rdf:RDF>
|
12
|
+
</metadata>
|
13
|
+
<defs id="defs6">
|
14
|
+
</defs>
|
15
|
+
<g transform="matrix(1.3333333,0,0,-1.3333333,0,1365.3333)" id="g10">
|
16
|
+
<g transform="scale(0.1)" id="g12">
|
17
|
+
<path id="path14" style="fill:#1877f2;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 10240,5120 c 0,2827.7 -2292.3,5120 -5120,5120 C 2292.3,10240 0,7947.7 0,5120 0,2564.46 1872.31,446.301 4320,62.1992 V 3640 H 3020 v 1480 h 1300 v 1128 c 0,1283.2 764.38,1992 1933.9,1992 560.17,0 1146.1,-100 1146.1,-100 V 6880 H 6754.38 C 6118.35,6880 5920,6485.33 5920,6080.43 V 5120 H 7340 L 7113,3640 H 5920 V 62.1992 C 8367.69,446.301 10240,2564.46 10240,5120">
|
18
|
+
</path>
|
19
|
+
<path id="path16" style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 7113,3640 227,1480 H 5920 v 960.43 c 0,404.9 198.35,799.57 834.38,799.57 H 7400 v 1260 c 0,0 -585.93,100 -1146.1,100 C 5084.38,8240 4320,7531.2 4320,6248 V 5120 H 3020 V 3640 H 4320 V 62.1992 C 4580.67,21.3008 4847.84,0 5120,0 c 272.16,0 539.33,21.3008 800,62.1992 V 3640 h 1193">
|
20
|
+
</path>
|
21
|
+
</g>
|
22
|
+
</g>
|
23
|
+
</svg>
|
@@ -0,0 +1,33 @@
|
|
1
|
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 581 172" style="enable-background:new 0 0 581 172;" xml:space="preserve">
|
2
|
+
<g>
|
3
|
+
<path d="M329.9,34.4c3.1,0,6.1-1.2,8.3-3.3c2.2-2.1,3.5-5.1,3.6-8.1c0-3.1-1.3-6.1-3.5-8.3c-2.2-2.2-5.2-3.5-8.3-3.5
|
4
|
+
c-3.1,0.1-6,1.3-8.2,3.6c-2.2,2.2-3.4,5.2-3.3,8.2c0,3,1.2,5.9,3.4,8.1C324,33.1,326.9,34.3,329.9,34.4L329.9,34.4z M410.5,45.4
|
5
|
+
h28.6v2.3c-1.6,0.3-3.1,0.8-4.5,1.6c-2.6,1.2-7.8,7.1-11.9,17c-6.8,17.1-13.9,37.4-21.4,60.6l-2.8,8.8c-1.2,4-2.3,6.6-2.8,8.1
|
6
|
+
c-0.5,1.6-1.2,4-2.4,6.9c-0.7,2.2-1.6,4.4-2.7,6.4c-1.4,2.6-4,7.9-6.1,9.5c-3.3,2.8-8.2,5.9-14.3,5.4c-11.9,0-20.8-8.8-20.9-19.2
|
7
|
+
c0-7.1,4.5-11.8,11.3-11.8c4.9,0,9.2,2.6,9.2,8.1c0,4-4,8.1-4,10.2c0,5.4,3.1,7.9,9.2,7.9c4.9,0,8.9-3.1,11.9-9.3
|
8
|
+
c4-7.1,4.4-14.9,1-23.6l-25.1-66c-5.8-15.2-10.1-20.2-15.5-20.8v-2.3h39.6v2.3c-4.7,0.5-7.1,3.3-7.1,8.3c0,3.6,1.4,9.2,4,16.3
|
9
|
+
l4.7,12.8c5.4,13.9,9.8,26,12,33.6c5.1-15.8,9.8-29.6,14.3-41.7c3.3-9,4.9-15.4,4.9-19.2c0-6.8-3.7-9.9-9.2-9.9L410.5,45.4
|
10
|
+
L410.5,45.4z M135.2,129.7c-5.1-0.9-9.4-5.4-9.4-14.9V0L97,6.2v2.4c4.9-0.5,9.8,3.8,9.8,13v93.2c0,9-4.9,14.2-9.8,14.9
|
11
|
+
c-0.5,0.1-0.9,0.1-1.4,0.2c-2.5,0.2-5-0.3-7.3-1.3c-3.9-1.7-7.1-4.7-9.8-9.1L65.2,98.4c-2.8-4.5-7-7.9-11.9-9.8
|
12
|
+
c-4.9-1.9-10.3-2.2-15.4-0.8l15-16.5c11.3-12.5,21.8-20.4,31.7-23.7v-2.3h-33v2.3c8.5,3.3,8,10.6-1.8,22L28.8,94V0L0,6.2v2.4
|
13
|
+
c4.9,0,9.8,4.8,9.8,13.3v92.8C9.8,125,5,129,0,129.7v2.3h38.2v-2.3c-6.3-0.9-9.4-5.7-9.4-14.9V97.7l8.2-9l19.8,32.4
|
14
|
+
c4.7,7.8,9.1,10.9,16,10.9h66.4v-1.8C139.3,130.2,137.4,130.1,135.2,129.7L135.2,129.7z M214.4,118.8V80
|
15
|
+
c-0.4-25.3-11.1-36.9-35.6-36.9c-7.8-0.1-15.4,2.5-21.6,7.3c-6.5,4.9-9.6,10.4-9.6,16.8c0,6.2,3.5,10.9,9.2,10.9
|
16
|
+
c6.1,0,10.5-3.5,10.5-8.3c0-3.6-2.4-8.7-2.4-12.1c0-6.2,4.7-11.6,12.9-11.6c10.5,0,18,7.8,18,25.1v10.4l-8.7,2.1
|
17
|
+
c-4.5,0.9-8.4,1.8-11.3,2.6c-3,0.9-6.8,2.1-11.3,3.8c-9.1,3.5-13.9,6.8-18.1,13c-2.1,3-3.1,6.6-3.1,10.2c0,14.4,10.1,21,24.2,21
|
18
|
+
c11.2,0,23-5.9,28.4-17c0.1,3.5,0.9,6.9,2.5,10.1c5.9,11.9,25.5,4.9,25.5,4.9V130C215.1,131.3,214.4,121.2,214.4,118.8L214.4,118.8
|
19
|
+
z M195.8,106.8c0,5.7-2.1,10.4-6.3,13.7c-4,3.3-8.2,5-12.6,5c-8.5,0-14.1-5.5-14.1-15.8c0-4.8,2.7-9.3,4.9-11.9
|
20
|
+
c1.8-1.8,3.8-3.3,6.1-4.3c3-1.6,4.4-2.4,6.5-3.3l8-2.9c4-1.6,6.4-2.4,7.5-2.9L195.8,106.8L195.8,106.8z M581,45.4h-67.8V0H581
|
21
|
+
l-14.2,22.7L581,45.4L581,45.4z M443.1,120.9c-8.4-8.6-13.1-20.2-12.9-32.3c-0.1-5.9,1-11.8,3.2-17.3c2.2-5.5,5.5-10.5,9.7-14.8
|
22
|
+
c8.6-9,19-13.5,31.3-13.5c12,0,22.5,4.5,31.1,13.5c4.2,4.2,7.6,9.2,9.8,14.7c2.3,5.5,3.4,11.4,3.3,17.4c0.1,6-1,11.9-3.3,17.4
|
23
|
+
c-2.3,5.5-5.6,10.6-9.8,14.8c-8.6,8.8-19,13.4-31.1,13.4C462.2,134.3,451.7,129.8,443.1,120.9L443.1,120.9z M490.1,58
|
24
|
+
c-3.4-6.7-8-10.6-13.3-11.7c-10.8-2.2-20.3,8.9-23.9,26.4c-1.5,7.9-1.9,15.9-1.1,23.8c0.8,8,3,15.7,6.6,22.9
|
25
|
+
c3.5,6.7,8,10.6,13.3,11.7c10.8,2.2,20.6-9.3,24.2-27C498.9,89.3,497.4,71.3,490.1,58L490.1,58L490.1,58z">
|
26
|
+
</path>
|
27
|
+
<path d="M340,114.8V45.4h-61.4v2.1c8.2,1.2,12.1,7.4,8.4,17.3c-19.2,51.8-18,49.5-19.2,53.6c-1.2-4-4-13.8-8.5-26.1
|
28
|
+
c-4.5-12.3-7.5-20.4-8.7-24.1c-4.7-14.4-3.1-19.7,4.5-20.6v-2.3h-39.8v2.3c5.9,1.2,11.2,8,15.5,20.1l6.1,15.8
|
29
|
+
c6.7,17,14.6,40.5,17.2,48.5h13.2c4.3-12.3,21.3-61.5,23.6-66.5c2.5-5.7,5.3-10,8.4-13c1.5-1.6,3.3-2.9,5.4-3.7
|
30
|
+
c2-0.8,4.2-1.3,6.4-1.2c0,0,9.6,0,9.6,9.2v58.1c0,9.7-4.7,14.2-9.6,14.9v2.3h38v-2.3C344.2,129,340,124.5,340,114.8L340,114.8z">
|
31
|
+
</path>
|
32
|
+
</g>
|
33
|
+
</svg>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<svg height="191" width="273" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
2
|
+
<defs>
|
3
|
+
<path d="M.06.5h272.104v190.44H.06z" id="a">
|
4
|
+
</path>
|
5
|
+
</defs>
|
6
|
+
<g fill="none" fill-rule="evenodd">
|
7
|
+
<mask fill="#fff" id="b">
|
8
|
+
<use href="#a">
|
9
|
+
</use>
|
10
|
+
</mask>
|
11
|
+
<path d="M113.258 21.277c8.777-9.144 20.998-14.818 34.513-14.818 17.965 0 33.641 10.018 41.986 24.892a58 58 0 0 1 23.733-5.046c32.404 0 58.674 26.499 58.674 59.189s-26.27 59.19-58.674 59.19c-3.957 0-7.821-.398-11.559-1.152-7.349 13.109-21.359 21.968-37.435 21.968a42.668 42.668 0 0 1-18.765-4.319C138.281 178.71 120.917 191 100.686 191c-21.073 0-39.033-13.332-45.922-32.03a45.117 45.117 0 0 1-9.338.972C20.337 159.942 0 139.392 0 114.043c0-16.99 9.136-31.823 22.715-39.758a52.55 52.55 0 0 1-4.349-20.994C18.366 24.136 42.033.5 71.227.5c17.14 0 32.373 8.148 42.031 20.777" fill="#00A1E0" mask="url(#b)">
|
12
|
+
</path>
|
13
|
+
<path d="M39.42 99.289c-.171.446.061.539.116.618.511.37 1.03.638 1.554.939 2.775 1.469 5.398 1.9 8.138 1.9 5.583 0 9.051-2.968 9.051-7.748v-.094c0-4.42-3.915-6.026-7.584-7.185l-.479-.155c-2.767-.898-5.155-1.675-5.155-3.498v-.093c0-1.561 1.396-2.708 3.559-2.708 2.405 0 5.255.799 7.093 1.814 0 0 .542.35.739-.173.107-.283 1.036-2.785 1.135-3.056.106-.293-.08-.514-.271-.628-2.099-1.279-4.998-2.149-7.999-2.149l-.557.002c-5.11 0-8.678 3.09-8.678 7.512v.095c0 4.66 3.936 6.175 7.623 7.228l.592.184c2.685.824 5.004 1.536 5.004 3.425v.094c0 1.73-1.507 3.015-3.934 3.015-.941 0-3.945-.016-7.191-2.069-.393-.229-.617-.394-.92-.579-.16-.097-.56-.272-.734.252l-1.102 3.057m81.73 0c-.171.446.061.539.118.618.509.37 1.029.638 1.552.939 2.776 1.469 5.399 1.9 8.138 1.9 5.583 0 9.052-2.968 9.052-7.748v-.094c0-4.42-3.914-6.026-7.584-7.185l-.479-.155c-2.767-.898-5.156-1.675-5.156-3.498v-.093c0-1.561 1.397-2.708 3.561-2.708 2.404 0 5.253.799 7.091 1.814 0 0 .542.35.74-.173.106-.283 1.036-2.785 1.134-3.056.107-.293-.08-.514-.27-.628-2.1-1.279-4.998-2.149-7.999-2.149l-.558.002c-5.109 0-8.677 3.09-8.677 7.512v.095c0 4.66 3.935 6.175 7.623 7.228l.591.184c2.686.824 5.005 1.536 5.005 3.425v.094c0 1.73-1.508 3.015-3.933 3.015-.943 0-3.947-.016-7.192-2.069-.393-.229-.623-.387-.921-.579-.101-.064-.572-.248-.733.252l-1.103 3.057m55.795-9.364c0 2.7-.504 4.832-1.494 6.335-.984 1.49-2.469 2.215-4.54 2.215s-3.548-.724-4.516-2.213c-.977-1.504-1.473-3.637-1.473-6.337 0-2.698.496-4.823 1.473-6.311.968-1.475 2.445-2.191 4.516-2.191s3.556.717 4.54 2.192c.992 1.487 1.494 3.612 1.494 6.31m4.662-5.007c-.459-1.549-1.172-2.912-2.121-4.049-.951-1.14-2.154-2.057-3.58-2.721-1.424-.665-3.104-1.002-4.995-1.002s-3.572.337-4.997 1.002c-1.424.664-2.628 1.581-3.579 2.723-.948 1.139-1.663 2.5-2.12 4.047-.455 1.537-.686 3.222-.686 5.007 0 1.786.231 3.472.686 5.007.457 1.546 1.17 2.908 2.121 4.049.951 1.142 2.158 2.051 3.58 2.699 1.426.648 3.106.978 4.995.978 1.89 0 3.568-.33 4.993-.978 1.424-.648 2.629-1.557 3.582-2.699.949-1.137 1.662-2.501 2.121-4.049.454-1.538.685-3.223.685-5.007 0-1.783-.231-3.469-.685-5.007m38.267 12.834c-.153-.453-.595-.282-.595-.282-.677.259-1.397.499-2.167.619-.776.122-1.635.183-2.554.183-2.253 0-4.048-.671-5.329-1.997-1.287-1.327-2.01-3.471-2.002-6.371.007-2.636.645-4.622 1.789-6.136 1.134-1.504 2.866-2.276 5.169-2.276 1.923 0 3.39.223 4.927.705 0 0 .365.159.54-.322.409-1.133.711-1.939 1.147-3.184.124-.355-.18-.505-.291-.548-.604-.236-2.031-.623-3.108-.786-1.007-.154-2.184-.234-3.497-.234-1.957 0-3.702.335-5.194.999-1.489.663-2.752 1.579-3.753 2.718-1.001 1.141-1.763 2.504-2.267 4.05-.505 1.538-.76 3.226-.76 5.016 0 3.865 1.043 6.988 3.1 9.276 2.064 2.296 5.16 3.462 9.201 3.462 2.387 0 4.836-.483 6.6-1.177 0 0 .336-.162.19-.554l-1.146-3.161m8.154-10.416c.223-1.501.634-2.748 1.275-3.722.967-1.475 2.439-2.288 4.51-2.288 2.072 0 3.437.814 4.421 2.289.65.975.934 2.274 1.045 3.723l-11.251-.002zm15.689-3.297c-.397-1.494-1.375-3.003-2.018-3.693-1.015-1.094-2.009-1.86-2.996-2.283a11.51 11.51 0 0 0-4.517-.917c-1.969 0-3.758.333-5.209 1.013-1.453.682-2.674 1.614-3.631 2.772-.959 1.157-1.678 2.534-2.137 4.096-.46 1.553-.692 3.246-.692 5.034 0 1.818.241 3.513.715 5.037.479 1.537 1.248 2.886 2.286 4.009 1.037 1.127 2.372 2.011 3.967 2.627 1.587.615 3.515.934 5.726.927 4.558-.015 6.955-1.031 7.945-1.578.175-.098.34-.267.134-.754l-1.032-2.888c-.158-.431-.594-.275-.594-.275-1.131.422-2.732 1.175-6.476 1.167-2.446-.004-4.258-.727-5.397-1.856-1.165-1.155-1.737-2.851-1.834-5.247l15.772.012s.416-.004.459-.41c.017-.168.541-3.24-.471-6.793zm-142.028 3.297c.223-1.501.635-2.748 1.275-3.722.968-1.475 2.438-2.288 4.511-2.288 2.072 0 3.437.814 4.421 2.289.649.975.933 2.274 1.044 3.723l-11.251-.002zm15.689-3.297c-.396-1.494-1.375-3.003-2.017-3.693-1.015-1.094-2.008-1.86-2.996-2.283a11.522 11.522 0 0 0-4.517-.917c-1.969 0-3.758.333-5.209 1.013-1.453.682-2.674 1.614-3.633 2.772-.957 1.157-1.676 2.534-2.137 4.096-.459 1.553-.69 3.246-.69 5.034 0 1.818.239 3.513.716 5.037.478 1.537 1.248 2.886 2.284 4.009 1.038 1.127 2.372 2.011 3.967 2.627 1.588.615 3.514.934 5.727.927 4.557-.015 6.955-1.031 7.945-1.578.174-.098.34-.267.133-.754l-1.031-2.888c-.159-.431-.595-.275-.595-.275-1.13.422-2.731 1.175-6.476 1.167-2.445-.004-4.258-.727-5.397-1.856-1.164-1.155-1.737-2.851-1.834-5.247l15.773.012s.416-.004.459-.41c.017-.168.541-3.24-.472-6.793zM67.592 97.666c-.619-.494-.705-.615-.91-.936-.313-.483-.473-1.171-.473-2.052 0-1.385.46-2.383 1.408-3.053-.01.002 1.36-1.182 4.575-1.14a31.98 31.98 0 0 1 4.283.365v7.17h.002s-2.005.431-4.262.567c-3.208.193-4.633-.924-4.623-.921zm6.277-11.086c-.64-.047-1.469-.07-2.463-.07-1.351 0-2.658.168-3.885.498-1.232.332-2.34.846-3.293 1.527a7.633 7.633 0 0 0-2.289 2.602c-.559 1.041-.844 2.264-.844 3.635 0 1.399.243 2.611.723 3.601a6.543 6.543 0 0 0 2.057 2.47c.877.638 1.959 1.106 3.214 1.392 1.239.283 2.643.426 4.177.426 1.62 0 3.231-.136 4.792-.399a95.06 95.06 0 0 0 3.973-.772c.526-.121 1.106-.28 1.106-.28.39-.099.36-.516.36-.516l-.009-14.426c0-3.164-.844-5.508-2.507-6.964-1.655-1.449-4.092-2.181-7.245-2.181-1.184 0-3.086.16-4.228.389 0 0-3.444.668-4.862 1.779 0 0-.312.192-.142.627l1.117 3c.139.389.518.256.518.256s.119-.047.259-.13c3.034-1.65 6.873-1.601 6.873-1.601 1.704 0 3.017.345 3.899 1.02.861.661 1.298 1.656 1.298 3.759v.667c-1.353-.196-2.599-.309-2.599-.309zm127.235-8.127a.428.428 0 0 0-.237-.568c-.269-.102-1.61-.385-2.644-.449-1.983-.124-3.082.21-4.068.654-.978.441-2.061 1.154-2.665 1.967l-.002-1.924c0-.264-.187-.477-.453-.477h-4.044c-.262 0-.452.213-.452.477v23.532a.48.48 0 0 0 .479.479h4.145a.479.479 0 0 0 .478-.479V89.91c0-1.579.174-3.152.521-4.141.342-.979.807-1.759 1.383-2.32a4.786 4.786 0 0 1 1.948-1.172 7.681 7.681 0 0 1 2.116-.298c.825 0 1.733.212 1.733.212.304.034.473-.152.576-.426.271-.721 1.039-2.882 1.186-3.312" fill="#FFFFFE">
|
14
|
+
</path>
|
15
|
+
<path d="M162.201 67.548a13.258 13.258 0 0 0-1.559-.37 12.217 12.217 0 0 0-2.144-.166c-2.853 0-5.102.806-6.681 2.398-1.568 1.58-2.635 3.987-3.17 7.154l-.193 1.069h-3.581s-.437-.018-.529.459l-.588 3.28c-.041.314.094.51.514.508h3.486l-3.537 19.743c-.277 1.59-.594 2.898-.945 3.889-.346.978-.684 1.711-1.1 2.243-.403.515-.785.894-1.444 1.115-.544.183-1.17.267-1.856.267-.382 0-.89-.064-1.265-.139-.375-.074-.57-.158-.851-.276 0 0-.409-.156-.57.254-.131.335-1.06 2.89-1.17 3.206-.112.312.045.558.243.629.464.166.809.272 1.441.421.878.207 1.618.22 2.311.22 1.452 0 2.775-.204 3.872-.6 1.104-.399 2.065-1.094 2.915-2.035.919-1.015 1.497-2.078 2.05-3.528.547-1.437 1.013-3.221 1.386-5.3l3.554-20.109h5.196s.438.016.529-.459l.588-3.28c.041-.314-.093-.51-.515-.508h-5.043c.025-.114.254-1.888.833-3.558.247-.713.712-1.288 1.106-1.683a3.273 3.273 0 0 1 1.321-.822 5.48 5.48 0 0 1 1.693-.244c.475 0 .941.057 1.296.131.489.104.679.159.807.197.514.157.583.005.684-.244l1.206-3.312c.124-.356-.178-.506-.29-.55m-70.474 34.117c0 .264-.188.479-.452.479h-4.183c-.265 0-.453-.215-.453-.479V67.997c0-.263.188-.476.453-.476h4.183c.264 0 .452.213.452.476v33.668" fill="#FFFFFE">
|
16
|
+
</path>
|
17
|
+
</g>
|
18
|
+
</svg>
|
@@ -0,0 +1,33 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<!-- Generator: Adobe Illustrator 23.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3
|
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4
|
+
viewBox="0 0 270 270" style="enable-background:new 0 0 270 270;" xml:space="preserve">
|
5
|
+
<style type="text/css">
|
6
|
+
.st0{fill:#E01E5A;}
|
7
|
+
.st1{fill:#36C5F0;}
|
8
|
+
.st2{fill:#2EB67D;}
|
9
|
+
.st3{fill:#ECB22E;}
|
10
|
+
</style>
|
11
|
+
<g>
|
12
|
+
<g>
|
13
|
+
<path class="st0" d="M99.4,151.2c0,7.1-5.8,12.9-12.9,12.9c-7.1,0-12.9-5.8-12.9-12.9c0-7.1,5.8-12.9,12.9-12.9h12.9V151.2z"/>
|
14
|
+
<path class="st0" d="M105.9,151.2c0-7.1,5.8-12.9,12.9-12.9s12.9,5.8,12.9,12.9v32.3c0,7.1-5.8,12.9-12.9,12.9
|
15
|
+
s-12.9-5.8-12.9-12.9V151.2z"/>
|
16
|
+
</g>
|
17
|
+
<g>
|
18
|
+
<path class="st1" d="M118.8,99.4c-7.1,0-12.9-5.8-12.9-12.9c0-7.1,5.8-12.9,12.9-12.9s12.9,5.8,12.9,12.9v12.9H118.8z"/>
|
19
|
+
<path class="st1" d="M118.8,105.9c7.1,0,12.9,5.8,12.9,12.9s-5.8,12.9-12.9,12.9H86.5c-7.1,0-12.9-5.8-12.9-12.9
|
20
|
+
s5.8-12.9,12.9-12.9H118.8z"/>
|
21
|
+
</g>
|
22
|
+
<g>
|
23
|
+
<path class="st2" d="M170.6,118.8c0-7.1,5.8-12.9,12.9-12.9c7.1,0,12.9,5.8,12.9,12.9s-5.8,12.9-12.9,12.9h-12.9V118.8z"/>
|
24
|
+
<path class="st2" d="M164.1,118.8c0,7.1-5.8,12.9-12.9,12.9c-7.1,0-12.9-5.8-12.9-12.9V86.5c0-7.1,5.8-12.9,12.9-12.9
|
25
|
+
c7.1,0,12.9,5.8,12.9,12.9V118.8z"/>
|
26
|
+
</g>
|
27
|
+
<g>
|
28
|
+
<path class="st3" d="M151.2,170.6c7.1,0,12.9,5.8,12.9,12.9c0,7.1-5.8,12.9-12.9,12.9c-7.1,0-12.9-5.8-12.9-12.9v-12.9H151.2z"/>
|
29
|
+
<path class="st3" d="M151.2,164.1c-7.1,0-12.9-5.8-12.9-12.9c0-7.1,5.8-12.9,12.9-12.9h32.3c7.1,0,12.9,5.8,12.9,12.9
|
30
|
+
c0,7.1-5.8,12.9-12.9,12.9H151.2z"/>
|
31
|
+
</g>
|
32
|
+
</g>
|
33
|
+
</svg>
|
@@ -0,0 +1 @@
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="-1.633235433328256 7.0326093303156565 131.26574682416876 114.63439066968435"><linearGradient id="a" gradientUnits="userSpaceOnUse" x1="64" x2="64" y1="7.034" y2="120.789"><stop offset="0" stop-color="#4387fd"/><stop offset="1" stop-color="#4683ea"/></linearGradient><path d="M27.79 115.217L1.54 69.749a11.499 11.499 0 0 1 0-11.499l26.25-45.467a11.5 11.5 0 0 1 9.96-5.75h52.5a11.5 11.5 0 0 1 9.959 5.75l26.25 45.467a11.499 11.499 0 0 1 0 11.5l-26.25 45.467a11.5 11.5 0 0 1-9.959 5.749h-52.5a11.499 11.499 0 0 1-9.96-5.75z" fill="url(#a)"/><path clip-path="url(#b)" d="M119.229 86.48L80.625 47.874 64 43.425l-14.933 5.55L43.3 64l4.637 16.729 40.938 40.938 8.687-.386z" opacity=".07"/><g fill="#fff"><path d="M64 40.804c-12.81 0-23.195 10.385-23.195 23.196 0 12.81 10.385 23.195 23.195 23.195S87.194 76.81 87.194 64c0-12.811-10.385-23.196-23.194-23.196m0 40.795c-9.72 0-17.6-7.88-17.6-17.6S54.28 46.4 64 46.4 81.6 54.28 81.6 64 73.72 81.6 64 81.6"/><path d="M52.99 63.104v7.21a12.794 12.794 0 0 0 4.38 4.475V63.104zM61.675 57.026v19.411c.745.137 1.507.22 2.29.22.714 0 1.41-.075 2.093-.189V57.026zM70.766 66.1v8.562a12.786 12.786 0 0 0 4.382-4.7v-3.861zM80.691 78.287l-2.403 2.405a1.088 1.088 0 0 0 0 1.537l9.115 9.112a1.088 1.088 0 0 0 1.537 0l2.403-2.402a1.092 1.092 0 0 0 0-1.536l-9.116-9.116a1.09 1.09 0 0 0-1.536 0"/></g></svg>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<svg xml:space="preserve" style="enable-background:new 0 0 512 512;" viewBox="0 0 512 512" y="0px" x="0px" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" id="Layer_1" version="1.1">
|
2
|
+
<style type="text/css">
|
3
|
+
.st0{fill:#205B97;}
|
4
|
+
.st1{fill:#5193CE;}
|
5
|
+
.st2{fill:#2E73B7;}
|
6
|
+
</style>
|
7
|
+
<g>
|
8
|
+
<path d="M256,391.5l194.7,46.4V73.1L256,119.5L256,391.5z" class="st0"></path>
|
9
|
+
<path d="M450.7,73.1l37.1,18.5v327.6l-37.1,18.5V73.1z M256,391.5L61.3,437.8V73.1L256,119.5V391.5z" class="st1"></path>
|
10
|
+
<path d="M61.3,73.1L24.2,91.7v327.6l37.1,18.5V73.1z" class="st0"></path>
|
11
|
+
<path d="M305.5,512l74.2-37.1V37.1L305.5,0l-22.7,243.1L305.5,512z" class="st1"></path>
|
12
|
+
<path d="M206.5,512l-74.2-37.1V37.1L206.5,0l22.7,243.1L206.5,512z" class="st0"></path>
|
13
|
+
<path d="M206.5,0h99.9v511h-99.9L206.5,0z" class="st2"></path>
|
14
|
+
</g>
|
15
|
+
</svg>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<svg viewBox="0 0 44 44" stroke="#249edc" fill="#249edc" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3
|
+
<path d="M37.2637465,33.128906 L28.0879655,27.828125 C26.7989025,27.085938 25.1504655,27.527344 24.4043715,28.816406 C24.1153085,29.324219 24.0020275,29.882812 24.0567155,30.425781 L24.0567155,40.785156 C24.0567155,42.265625 25.2598395,43.46875 26.7442155,43.46875 C28.2246835,43.46875 29.4278085,42.265625 29.4278085,40.785156 L29.4278085,34.828125 L34.5684335,37.796875 C35.8574965,38.542969 37.5098395,38.097656 38.2520275,36.808594 C38.9981215,35.519531 38.5567155,33.871094 37.2637465,33.128906" id="Path"></path>
|
4
|
+
<path d="M14.4434335,21.769531 C14.4590585,20.8125 13.9551525,19.921875 13.1270275,19.441406 L3.95124649,14.144531 C3.55280849,13.914062 3.09577749,13.792969 2.63874649,13.792969 C1.69733949,13.792969 0.822339495,14.296875 0.353589495,15.109375 C-0.372972505,16.367188 0.060621495,17.980469 1.31843349,18.707031 L6.60749649,21.757812 L1.31843349,24.8125 C0.709058495,25.164062 0.271558495,25.730469 0.091871495,26.410156 C-0.091722505,27.089844 0.00202749496,27.800781 0.353589495,28.410156 C0.822339495,29.222656 1.69733949,29.726562 2.63483949,29.726562 C3.09577749,29.726562 3.55280849,29.605469 3.95124649,29.375 L13.1270275,24.078125 C13.9473395,23.601562 14.4512465,22.71875 14.4434335,21.769531" id="Path2"></path>
|
5
|
+
<path d="M6.03327749,10.390625 L15.2090585,15.6875 C16.2793715,16.308594 17.5996835,16.105469 18.4434335,15.28125 C18.9785895,14.789062 19.3106215,14.085938 19.3106215,13.304688 L19.3106215,2.6875 C19.3106215,1.203125 18.1074965,0 16.6270275,0 C15.1426525,0 13.9395275,1.203125 13.9395275,2.6875 L13.9395275,8.730469 L8.72858949,5.722656 C7.43952749,4.976562 5.79108949,5.417969 5.04499649,6.707031 C4.29890249,7.996094 4.74421549,9.644531 6.03327749,10.390625" id="Path3"></path>
|
6
|
+
<path d="M26.6660895,22.199219 C26.6660895,22.402344 26.5489025,22.683594 26.4043715,22.832031 L22.7676525,26.46875 C22.6231215,26.613281 22.3379655,26.730469 22.1348395,26.730469 L21.2090585,26.730469 C21.0059335,26.730469 20.7207775,26.613281 20.5762465,26.46875 L16.9356215,22.832031 C16.7910895,22.683594 16.6739025,22.402344 16.6739025,22.199219 L16.6739025,21.273438 C16.6739025,21.066406 16.7910895,20.785156 16.9356215,20.640625 L20.5762465,17 C20.7207775,16.855469 21.0059335,16.738281 21.2090585,16.738281 L22.1348395,16.738281 C22.3379655,16.738281 22.6231215,16.855469 22.7676525,17 L26.4043715,20.640625 C26.5489025,20.785156 26.6660895,21.066406 26.6660895,21.273438 L26.6660895,22.199219 Z M23.4199965,21.753906 L23.4199965,21.714844 C23.4199965,21.566406 23.3340585,21.359375 23.2285895,21.25 L22.1543715,20.179688 C22.0489025,20.070312 21.8418715,19.984375 21.6895275,19.984375 L21.6504655,19.984375 C21.5020275,19.984375 21.2949965,20.070312 21.1856215,20.179688 L20.1153085,21.25 C20.0098395,21.355469 19.9239025,21.5625 19.9239025,21.714844 L19.9239025,21.753906 C19.9239025,21.90625 20.0098395,22.113281 20.1153085,22.21875 L21.1856215,23.292969 C21.2949965,23.398438 21.5020275,23.484375 21.6504655,23.484375 L21.6895275,23.484375 C21.8418715,23.484375 22.0489025,23.398438 22.1543715,23.292969 L23.2285895,22.21875 C23.3340585,22.113281 23.4199965,21.90625 23.4199965,21.753906 Z" id="Combined-Shape"></path>
|
7
|
+
<path d="M28.0879655,15.6875 L37.2637465,10.390625 C38.5528085,9.648438 38.9981215,7.996094 38.2520275,6.707031 C37.5059335,5.417969 35.8574965,4.976562 34.5684335,5.722656 L29.4278085,8.691406 L29.4278085,2.6875 C29.4278085,1.203125 28.2246835,-5.68434189e-14 26.7442155,-5.68434189e-14 C25.2598395,-5.68434189e-14 24.0567155,1.203125 24.0567155,2.6875 L24.0567155,13.09375 C24.0059335,13.632812 24.1114025,14.195312 24.4043715,14.703125 C25.1504655,15.992188 26.7989025,16.433594 28.0879655,15.6875" id="Path4"></path>
|
8
|
+
<path d="M17.0489025,27.515625 C16.4395275,27.398438 15.7871835,27.496094 15.2090585,27.828125 L6.03327749,33.128906 C4.74421549,33.871094 4.29890249,35.519531 5.04499649,36.808594 C5.79108949,38.101562 7.43952749,38.542969 8.72858949,37.796875 L13.9395275,34.789062 L13.9395275,40.785156 C13.9395275,42.265625 15.1426525,43.46875 16.6270275,43.46875 C18.1074965,43.46875 19.3106215,42.265625 19.3106215,40.785156 L19.3106215,30.167969 C19.3106215,28.828125 18.3301525,27.71875 17.0489025,27.515625" id="Path5"></path>
|
9
|
+
<path d="M42.9981215,15.078125 C42.2559335,13.785156 40.6035895,13.34375 39.3145275,14.089844 L30.1387465,19.386719 C29.2598395,19.894531 28.7754655,20.824219 28.7910895,21.769531 C28.7832775,22.710938 29.2676525,23.628906 30.1387465,24.128906 L39.3145275,29.429688 C40.6035895,30.171875 42.2520275,29.730469 42.9981215,28.441406 C43.7442155,27.152344 43.2989025,25.503906 42.0098395,24.757812 L36.8145275,21.757812 L42.0098395,18.757812 C43.3028085,18.015625 43.7442155,16.367188 42.9981215,15.078125" id="Path6"></path>
|
10
|
+
</svg>
|
@@ -65,7 +65,8 @@ module Multiwoven
|
|
65
65
|
end
|
66
66
|
|
67
67
|
def extract_data(record_object, properties)
|
68
|
-
record_object.data
|
68
|
+
data_attributes = record_object.with_indifferent_access[:data][:attributes]
|
69
|
+
data_attributes.select { |key, _| properties.key?(key.to_sym) }
|
69
70
|
end
|
70
71
|
|
71
72
|
def success?(response)
|
@@ -1,15 +1,14 @@
|
|
1
1
|
{
|
2
|
-
"data":
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
}
|
2
|
+
"data": {
|
3
|
+
"name": "Facebook",
|
4
|
+
"connector_type": "destination",
|
5
|
+
"category": "Adtech",
|
6
|
+
"documentation_url": "https://docs.mutliwoven.com",
|
7
|
+
"github_issue_label": "destination-facebook",
|
8
|
+
"icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/destination/facebook.svg",
|
9
|
+
"license": "MIT",
|
10
|
+
"release_stage": "alpha",
|
11
|
+
"support_level": "community",
|
12
|
+
"tags": ["language:ruby", "multiwoven"]
|
13
|
+
}
|
14
|
+
}
|
@@ -1,15 +1,14 @@
|
|
1
1
|
{
|
2
|
-
"data":
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
}
|
2
|
+
"data": {
|
3
|
+
"name": "Klaviyo",
|
4
|
+
"connector_type": "destination",
|
5
|
+
"category": "Marketing Automation",
|
6
|
+
"documentation_url": "https://docs.mutliwoven.com",
|
7
|
+
"github_issue_label": "destination-klaviyo",
|
8
|
+
"icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/destination/klaviyo.svg",
|
9
|
+
"license": "MIT",
|
10
|
+
"release_stage": "alpha",
|
11
|
+
"support_level": "community",
|
12
|
+
"tags": ["language:ruby", "multiwoven"]
|
13
|
+
}
|
14
|
+
}
|
@@ -27,9 +27,10 @@ module Multiwoven
|
|
27
27
|
handle_exception("SALESFORCE:CRM:DISCOVER:EXCEPTION", "error", e)
|
28
28
|
end
|
29
29
|
|
30
|
-
def write(sync_config, records,
|
31
|
-
|
32
|
-
|
30
|
+
def write(sync_config, records, action = "create")
|
31
|
+
@action = sync_config.stream.action || action
|
32
|
+
initialize_client(sync_config.destination.connection_specification)
|
33
|
+
process_records(records, sync_config.stream)
|
33
34
|
rescue StandardError => e
|
34
35
|
handle_exception("SALESFORCE:CRM:WRITE:EXCEPTION", "error", e)
|
35
36
|
end
|
@@ -50,7 +51,7 @@ module Multiwoven
|
|
50
51
|
def process_records(records, stream)
|
51
52
|
write_success = 0
|
52
53
|
write_failure = 0
|
53
|
-
properties = stream
|
54
|
+
properties = stream.json_schema[:properties]
|
54
55
|
records.each do |record_object|
|
55
56
|
record = extract_data(record_object, properties)
|
56
57
|
process_record(stream, record)
|
@@ -63,12 +64,12 @@ module Multiwoven
|
|
63
64
|
end
|
64
65
|
|
65
66
|
def process_record(stream, record)
|
66
|
-
send_data_to_salesforce(stream
|
67
|
+
send_data_to_salesforce(stream.name, record)
|
67
68
|
end
|
68
69
|
|
69
|
-
def send_data_to_salesforce(
|
70
|
-
method_name = "#{action}!"
|
71
|
-
args = build_args(action, stream_name, record)
|
70
|
+
def send_data_to_salesforce(stream_name, record = {})
|
71
|
+
method_name = "#{@action}!"
|
72
|
+
args = build_args(@action, stream_name, record)
|
72
73
|
@client.send(method_name, *args)
|
73
74
|
end
|
74
75
|
|
@@ -1,15 +1,14 @@
|
|
1
1
|
{
|
2
|
-
"data":
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
}
|
2
|
+
"data": {
|
3
|
+
"name": "Salesforce CRM",
|
4
|
+
"connector_type": "destination",
|
5
|
+
"category": "CRM",
|
6
|
+
"documentation_url": "https://docs.mutliwoven.com",
|
7
|
+
"github_issue_label": "destination-salesforce-crm",
|
8
|
+
"icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/destination/salesforce.svg",
|
9
|
+
"license": "MIT",
|
10
|
+
"release_stage": "alpha",
|
11
|
+
"support_level": "community",
|
12
|
+
"tags": ["language:ruby", "multiwoven"]
|
13
|
+
}
|
14
|
+
}
|
@@ -0,0 +1,125 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Multiwoven
|
4
|
+
module Integrations
|
5
|
+
module Destination
|
6
|
+
module Slack
|
7
|
+
include Multiwoven::Integrations::Core
|
8
|
+
|
9
|
+
class Client < DestinationConnector
|
10
|
+
attr_accessor :channel_id
|
11
|
+
|
12
|
+
def check_connection(connection_config)
|
13
|
+
configure_slack(connection_config[:api_token])
|
14
|
+
client = ::Slack::Web::Client.new
|
15
|
+
client.auth_test
|
16
|
+
success_status
|
17
|
+
rescue StandardError => e
|
18
|
+
failure_status(e)
|
19
|
+
end
|
20
|
+
|
21
|
+
def discover(_connection_config = nil)
|
22
|
+
catalog = build_catalog(load_catalog_streams)
|
23
|
+
catalog.to_multiwoven_message
|
24
|
+
rescue StandardError => e
|
25
|
+
handle_exception("SLACK:DISCOVER:EXCEPTION", "error", e)
|
26
|
+
end
|
27
|
+
|
28
|
+
def write(sync_config, records, action = "create")
|
29
|
+
# Currently as we only create a message for each record in slack, we are not using actions.
|
30
|
+
# This will be changed in future.
|
31
|
+
|
32
|
+
@action = sync_config.stream.action || action
|
33
|
+
connection_config = sync_config.destination.connection_specification.with_indifferent_access
|
34
|
+
configure_slack(connection_config[:api_token])
|
35
|
+
@client = ::Slack::Web::Client.new
|
36
|
+
@channel_id = connection_config[:channel_id]
|
37
|
+
process_records(records, sync_config.stream)
|
38
|
+
rescue StandardError => e
|
39
|
+
handle_exception("SLACK:WRITE:EXCEPTION", "error", e)
|
40
|
+
end
|
41
|
+
|
42
|
+
private
|
43
|
+
|
44
|
+
def configure_slack(api_token)
|
45
|
+
::Slack.configure do |config|
|
46
|
+
config.token = api_token
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
def process_records(records, stream)
|
51
|
+
write_success = 0
|
52
|
+
write_failure = 0
|
53
|
+
records.each do |record_object|
|
54
|
+
process_record(stream, record_object.with_indifferent_access)
|
55
|
+
write_success += 1
|
56
|
+
rescue StandardError => e
|
57
|
+
write_failure += 1
|
58
|
+
handle_exception("SLACK:CRM:WRITE:EXCEPTION", "error", e)
|
59
|
+
end
|
60
|
+
tracking_message(write_success, write_failure)
|
61
|
+
end
|
62
|
+
|
63
|
+
def process_record(stream, record)
|
64
|
+
send_data_to_slack(stream[:name], record)
|
65
|
+
end
|
66
|
+
|
67
|
+
def send_data_to_slack(stream_name, record = {})
|
68
|
+
args = build_args(stream_name, record)
|
69
|
+
@client.send(stream_name, **args)
|
70
|
+
end
|
71
|
+
|
72
|
+
def build_args(stream_name, record)
|
73
|
+
case stream_name
|
74
|
+
when "chat_postMessage"
|
75
|
+
{ channel: channel_id, text: slack_code_block(record[:data][:attributes]) }
|
76
|
+
else
|
77
|
+
raise "Stream name not found: #{stream_name}"
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
def slack_code_block(data)
|
82
|
+
longest_key = data.keys.map(&:to_s).max_by(&:length).length
|
83
|
+
table_str = "```\n"
|
84
|
+
data.each do |key, value|
|
85
|
+
table_str += "#{key.to_s.ljust(longest_key)} : #{value}\n"
|
86
|
+
end
|
87
|
+
table_str += "```"
|
88
|
+
|
89
|
+
table_str
|
90
|
+
end
|
91
|
+
|
92
|
+
def success_status
|
93
|
+
ConnectionStatus.new(status: ConnectionStatusType["succeeded"]).to_multiwoven_message
|
94
|
+
end
|
95
|
+
|
96
|
+
def failure_status(error)
|
97
|
+
ConnectionStatus.new(status: ConnectionStatusType["failed"], message: error.message).to_multiwoven_message
|
98
|
+
end
|
99
|
+
|
100
|
+
def load_catalog_streams
|
101
|
+
catalog_json = read_json(CATALOG_SPEC_PATH)
|
102
|
+
catalog_json["streams"].map { |stream| build_stream(stream) }
|
103
|
+
end
|
104
|
+
|
105
|
+
def build_stream(stream)
|
106
|
+
Multiwoven::Integrations::Protocol::Stream.new(
|
107
|
+
name: stream["name"], json_schema: stream["json_schema"],
|
108
|
+
action: stream["action"]
|
109
|
+
)
|
110
|
+
end
|
111
|
+
|
112
|
+
def build_catalog(streams)
|
113
|
+
Multiwoven::Integrations::Protocol::Catalog.new(streams: streams)
|
114
|
+
end
|
115
|
+
|
116
|
+
def tracking_message(success, failure)
|
117
|
+
Multiwoven::Integrations::Protocol::TrackingMessage.new(
|
118
|
+
success: success, failed: failure
|
119
|
+
).to_multiwoven_message
|
120
|
+
end
|
121
|
+
end
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
125
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
{
|
2
|
+
"streams": [
|
3
|
+
{
|
4
|
+
"name": "chat_postMessage",
|
5
|
+
"action": "create",
|
6
|
+
"json_schema": {
|
7
|
+
"type": "object",
|
8
|
+
"additionalProperties": false,
|
9
|
+
"properties": {
|
10
|
+
"text": {
|
11
|
+
"type": ["string", "null"]
|
12
|
+
},
|
13
|
+
"attachments": {
|
14
|
+
"type": ["string", "null"]
|
15
|
+
},
|
16
|
+
"blocks": {
|
17
|
+
"type": ["array", "null"],
|
18
|
+
"items": {
|
19
|
+
"type": "string"
|
20
|
+
}
|
21
|
+
},
|
22
|
+
"as_user": {
|
23
|
+
"type": ["boolean", "null"]
|
24
|
+
},
|
25
|
+
"icon_emoji": {
|
26
|
+
"type": ["string", "null"]
|
27
|
+
},
|
28
|
+
"icon_url": {
|
29
|
+
"type": ["string", "null"]
|
30
|
+
},
|
31
|
+
"link_names": {
|
32
|
+
"type": ["boolean", "null"]
|
33
|
+
},
|
34
|
+
"metadata": {
|
35
|
+
"type": ["string", "null"]
|
36
|
+
},
|
37
|
+
"mrkdwn": {
|
38
|
+
"type": ["boolean", "null"]
|
39
|
+
},
|
40
|
+
"parse": {
|
41
|
+
"type": ["string", "null"]
|
42
|
+
},
|
43
|
+
"reply_broadcast": {
|
44
|
+
"type": ["boolean", "null"]
|
45
|
+
},
|
46
|
+
"thread_ts": {
|
47
|
+
"type": ["string", "null"]
|
48
|
+
},
|
49
|
+
"unfurl_links": {
|
50
|
+
"type": ["boolean", "null"]
|
51
|
+
},
|
52
|
+
"unfurl_media": {
|
53
|
+
"type": ["boolean", "null"]
|
54
|
+
},
|
55
|
+
"username": {
|
56
|
+
"type": ["string", "null"]
|
57
|
+
}
|
58
|
+
},
|
59
|
+
"oneOf": [
|
60
|
+
{ "required": ["text"] },
|
61
|
+
{ "required": ["attachments"] },
|
62
|
+
{ "required": ["blocks"] }
|
63
|
+
]
|
64
|
+
},
|
65
|
+
"supported_sync_modes": ["full_refresh", "incremental"],
|
66
|
+
"source_defined_cursor": true,
|
67
|
+
"default_cursor_field": ["updated"],
|
68
|
+
"source_defined_primary_key": [["Id"]]
|
69
|
+
}
|
70
|
+
]
|
71
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
{
|
2
|
+
"data": {
|
3
|
+
"name": "Slack",
|
4
|
+
"connector_type": "destination",
|
5
|
+
"category": "Team Collaboration",
|
6
|
+
"documentation_url": "https://docs.mutliwoven.com",
|
7
|
+
"github_issue_label": "destination-slack",
|
8
|
+
"icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/destination/slack.svg",
|
9
|
+
"license": "MIT",
|
10
|
+
"release_stage": "alpha",
|
11
|
+
"support_level": "community",
|
12
|
+
"tags": ["language:ruby", "multiwoven"]
|
13
|
+
}
|
14
|
+
}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
{
|
2
|
+
"documentation_url": "https://docs.multiwoven.com/integrations/destination/slack",
|
3
|
+
"stream_type": "static",
|
4
|
+
"connection_specification": {
|
5
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
6
|
+
"title": "Slack Destination Spec",
|
7
|
+
"type": "object",
|
8
|
+
"required": ["api_token", "channel_id"],
|
9
|
+
"properties": {
|
10
|
+
"api_token": {
|
11
|
+
"type": "string",
|
12
|
+
"title": "API Token",
|
13
|
+
"order": 0
|
14
|
+
},
|
15
|
+
"channel_id": {
|
16
|
+
"type": "string",
|
17
|
+
"title": "Channel ID",
|
18
|
+
"order": 1
|
19
|
+
}
|
20
|
+
}
|
21
|
+
}
|
22
|
+
}
|
@@ -1,15 +1,14 @@
|
|
1
1
|
{
|
2
|
-
"data":
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
}
|
2
|
+
"data": {
|
3
|
+
"name": "BigQuery",
|
4
|
+
"connector_type": "source",
|
5
|
+
"category": "Data Warehouse",
|
6
|
+
"documentation_url": "https://docs.mutliwoven.com",
|
7
|
+
"github_issue_label": "source-bigquery",
|
8
|
+
"icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/source/bigquery.svg",
|
9
|
+
"license": "MIT",
|
10
|
+
"release_stage": "alpha",
|
11
|
+
"support_level": "community",
|
12
|
+
"tags": ["language:ruby", "multiwoven"]
|
13
|
+
}
|
14
|
+
}
|
@@ -1,15 +1,14 @@
|
|
1
1
|
{
|
2
|
-
"data":
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
}
|
2
|
+
"data": {
|
3
|
+
"name": "Redshift",
|
4
|
+
"connector_type": "source",
|
5
|
+
"category": "Data Warehouse",
|
6
|
+
"documentation_url": "https://docs.mutliwoven.com",
|
7
|
+
"github_issue_label": "source-redshift",
|
8
|
+
"icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/source/redshift.svg",
|
9
|
+
"license": "MIT",
|
10
|
+
"release_stage": "alpha",
|
11
|
+
"support_level": "community",
|
12
|
+
"tags": ["language:ruby", "multiwoven"]
|
13
|
+
}
|
14
|
+
}
|
@@ -1,15 +1,14 @@
|
|
1
1
|
{
|
2
|
-
"data":
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
}
|
2
|
+
"data": {
|
3
|
+
"name": "Snowflake",
|
4
|
+
"connector_type": "source",
|
5
|
+
"category": "Data Warehouse",
|
6
|
+
"documentation_url": "https://docs.mutliwoven.com",
|
7
|
+
"github_issue_label": "source-snowflake",
|
8
|
+
"icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/source/snowflake.svg",
|
9
|
+
"license": "MIT",
|
10
|
+
"release_stage": "alpha",
|
11
|
+
"support_level": "community",
|
12
|
+
"tags": ["language:ruby", "multiwoven"]
|
13
|
+
}
|
14
|
+
}
|
@@ -12,6 +12,7 @@ require "uri"
|
|
12
12
|
require "active_support/core_ext/hash/indifferent_access"
|
13
13
|
require "restforce"
|
14
14
|
require "logger"
|
15
|
+
require "slack-ruby-client"
|
15
16
|
|
16
17
|
# Service
|
17
18
|
require_relative "integrations/config"
|
@@ -36,6 +37,7 @@ require_relative "integrations/source/bigquery/client"
|
|
36
37
|
require_relative "integrations/destination/klaviyo/client"
|
37
38
|
require_relative "integrations/destination/salesforce_crm/client"
|
38
39
|
require_relative "integrations/destination/facebook_custom_audience/client"
|
40
|
+
require_relative "integrations/destination/slack/client"
|
39
41
|
|
40
42
|
module Multiwoven
|
41
43
|
module Integrations
|
@@ -34,6 +34,7 @@ Gem::Specification.new do |spec|
|
|
34
34
|
spec.require_paths = ["lib"]
|
35
35
|
|
36
36
|
spec.add_runtime_dependency "activesupport"
|
37
|
+
spec.add_runtime_dependency "async-websocket"
|
37
38
|
spec.add_runtime_dependency "dry-schema"
|
38
39
|
spec.add_runtime_dependency "dry-struct"
|
39
40
|
spec.add_runtime_dependency "dry-types"
|
@@ -43,6 +44,7 @@ Gem::Specification.new do |spec|
|
|
43
44
|
spec.add_runtime_dependency "restforce"
|
44
45
|
spec.add_runtime_dependency "ruby-odbc"
|
45
46
|
spec.add_runtime_dependency "sequel"
|
47
|
+
spec.add_runtime_dependency "slack-ruby-client"
|
46
48
|
|
47
49
|
spec.add_development_dependency "byebug"
|
48
50
|
spec.add_development_dependency "rspec"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: multiwoven-integrations
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Subin T P
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-01
|
11
|
+
date: 2024-02-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: async-websocket
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: dry-schema
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -150,6 +164,20 @@ dependencies:
|
|
150
164
|
- - ">="
|
151
165
|
- !ruby/object:Gem::Version
|
152
166
|
version: '0'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: slack-ruby-client
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - ">="
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0'
|
174
|
+
type: :runtime
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - ">="
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0'
|
153
181
|
- !ruby/object:Gem::Dependency
|
154
182
|
name: byebug
|
155
183
|
requirement: !ruby/object:Gem::Requirement
|
@@ -251,6 +279,13 @@ files:
|
|
251
279
|
- LICENSE.txt
|
252
280
|
- README.md
|
253
281
|
- Rakefile
|
282
|
+
- assets/images/destination/facebook.svg
|
283
|
+
- assets/images/destination/klaviyo.svg
|
284
|
+
- assets/images/destination/salesforce.svg
|
285
|
+
- assets/images/destination/slack.svg
|
286
|
+
- assets/images/source/bigquery.svg
|
287
|
+
- assets/images/source/redshift.svg
|
288
|
+
- assets/images/source/snowflake.svg
|
254
289
|
- lib/multiwoven/integrations.rb
|
255
290
|
- lib/multiwoven/integrations/config.rb
|
256
291
|
- lib/multiwoven/integrations/core/base_connector.rb
|
@@ -271,6 +306,10 @@ files:
|
|
271
306
|
- lib/multiwoven/integrations/destination/salesforce_crm/config/catalog.json
|
272
307
|
- lib/multiwoven/integrations/destination/salesforce_crm/config/meta.json
|
273
308
|
- lib/multiwoven/integrations/destination/salesforce_crm/config/spec.json
|
309
|
+
- lib/multiwoven/integrations/destination/slack/client.rb
|
310
|
+
- lib/multiwoven/integrations/destination/slack/config/catalog.json
|
311
|
+
- lib/multiwoven/integrations/destination/slack/config/meta.json
|
312
|
+
- lib/multiwoven/integrations/destination/slack/config/spec.json
|
274
313
|
- lib/multiwoven/integrations/protocol/protocol.json
|
275
314
|
- lib/multiwoven/integrations/protocol/protocol.rb
|
276
315
|
- lib/multiwoven/integrations/rollout.rb
|
@@ -309,7 +348,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
309
348
|
- !ruby/object:Gem::Version
|
310
349
|
version: '0'
|
311
350
|
requirements: []
|
312
|
-
rubygems_version: 3.
|
351
|
+
rubygems_version: 3.5.3
|
313
352
|
signing_key:
|
314
353
|
specification_version: 4
|
315
354
|
summary: Integration suite for open source reverse ETL platform
|