@activepieces/piece-twilio 0.2.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +7 -8
- package/src/index.d.ts +2 -1
- package/src/index.js +16 -1
- package/src/index.js.map +1 -1
- package/src/lib/action/send-sms.d.ts +5 -1
- package/src/lib/action/send-sms.js +4 -3
- package/src/lib/action/send-sms.js.map +1 -1
- package/src/lib/common/index.d.ts +0 -1
- package/src/lib/common/index.js +4 -17
- package/src/lib/common/index.js.map +1 -1
- package/src/lib/trigger/new-incoming-sms.d.ts +4 -1
- package/src/lib/trigger/new-incoming-sms.js +6 -5
- package/src/lib/trigger/new-incoming-sms.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@activepieces/piece-twilio",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"@sinclair/typebox": "0.26.
|
|
5
|
+
"@sinclair/typebox": "^0.26.3",
|
|
6
6
|
"axios": "1.2.4",
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
"@activepieces/pieces-framework": "0.
|
|
10
|
-
"@activepieces/shared": "0.
|
|
11
|
-
"
|
|
12
|
-
"tslib": "2.5.3"
|
|
7
|
+
"nanoid": "^3.3.4",
|
|
8
|
+
"@activepieces/pieces-common": "0.1.0",
|
|
9
|
+
"@activepieces/pieces-framework": "0.4.0",
|
|
10
|
+
"@activepieces/shared": "0.4.0",
|
|
11
|
+
"tslib": "1.14.1"
|
|
13
12
|
},
|
|
14
13
|
"main": "./src/index.js",
|
|
15
14
|
"types": "./src/index.d.ts"
|
package/src/index.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export declare const
|
|
1
|
+
export declare const twilioAuth: import("@activepieces/pieces-framework").BasicAuthProperty<true>;
|
|
2
|
+
export declare const twilio: import("@activepieces/pieces-framework").Piece<import("@activepieces/pieces-framework").BasicAuthProperty<true>>;
|
package/src/index.js
CHANGED
|
@@ -1,12 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.twilio = void 0;
|
|
3
|
+
exports.twilio = exports.twilioAuth = void 0;
|
|
4
4
|
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
5
5
|
const send_sms_1 = require("./lib/action/send-sms");
|
|
6
6
|
const new_incoming_sms_1 = require("./lib/trigger/new-incoming-sms");
|
|
7
|
+
exports.twilioAuth = pieces_framework_1.PieceAuth.BasicAuth({
|
|
8
|
+
description: 'The authentication to use to connect to Twilio',
|
|
9
|
+
displayName: 'Authentication',
|
|
10
|
+
required: true,
|
|
11
|
+
username: {
|
|
12
|
+
displayName: 'Account SID',
|
|
13
|
+
description: 'The account SID to use to connect to Twilio',
|
|
14
|
+
},
|
|
15
|
+
password: {
|
|
16
|
+
displayName: 'Auth token',
|
|
17
|
+
description: 'The auth token to use to connect to Twilio',
|
|
18
|
+
}
|
|
19
|
+
});
|
|
7
20
|
exports.twilio = (0, pieces_framework_1.createPiece)({
|
|
8
21
|
displayName: 'Twilio',
|
|
22
|
+
minimumSupportedRelease: '0.5.0',
|
|
9
23
|
logoUrl: 'https://cdn.activepieces.com/pieces/twilio.png',
|
|
24
|
+
auth: exports.twilioAuth,
|
|
10
25
|
actions: [send_sms_1.twilioSendSms],
|
|
11
26
|
authors: ['abuaboud'],
|
|
12
27
|
triggers: [new_incoming_sms_1.twilioNewIncomingSms],
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/pieces/twilio/src/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/pieces/twilio/src/index.ts"],"names":[],"mappings":";;;AAAA,qEAAwE;AACxE,oDAAsD;AACtD,qEAAsE;AAEzD,QAAA,UAAU,GAAG,4BAAS,CAAC,SAAS,CAAC;IAC1C,WAAW,EAAE,gDAAgD;IAC7D,WAAW,EAAE,gBAAgB;IAC7B,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE;QACN,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,6CAA6C;KAC7D;IACD,QAAQ,EAAE;QACN,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,4CAA4C;KAC5D;CACJ,CAAC,CAAA;AAEW,QAAA,MAAM,GAAG,IAAA,8BAAW,EAAC;IAC9B,WAAW,EAAE,QAAQ;IACjB,uBAAuB,EAAE,OAAO;IACpC,OAAO,EAAE,gDAAgD;IACzD,IAAI,EAAE,kBAAU;IAChB,OAAO,EAAE,CAAC,wBAAa,CAAC;IACxB,OAAO,EAAE,CAAC,UAAU,CAAC;IACrB,QAAQ,EAAE,CAAC,uCAAoB,CAAC;CACnC,CAAC,CAAC"}
|
|
@@ -1 +1,5 @@
|
|
|
1
|
-
export declare const twilioSendSms: import("@activepieces/pieces-framework").
|
|
1
|
+
export declare const twilioSendSms: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").BasicAuthProperty<true>, {
|
|
2
|
+
from: import("@activepieces/pieces-framework").DropdownProperty<any, true>;
|
|
3
|
+
body: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
4
|
+
to: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
5
|
+
}>;
|
|
@@ -5,12 +5,13 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
6
|
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
7
|
const common_1 = require("../common");
|
|
8
|
+
const __1 = require("../..");
|
|
8
9
|
exports.twilioSendSms = (0, pieces_framework_1.createAction)({
|
|
10
|
+
auth: __1.twilioAuth,
|
|
9
11
|
name: 'send_sms',
|
|
10
12
|
description: 'Send a new SMS message',
|
|
11
13
|
displayName: 'Send SMS',
|
|
12
14
|
props: {
|
|
13
|
-
authentication: common_1.twilioCommon.authentication,
|
|
14
15
|
from: common_1.twilioCommon.phone_number,
|
|
15
16
|
body: pieces_framework_1.Property.ShortText({
|
|
16
17
|
description: 'The body of the message to send',
|
|
@@ -26,8 +27,8 @@ exports.twilioSendSms = (0, pieces_framework_1.createAction)({
|
|
|
26
27
|
run(context) {
|
|
27
28
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
28
29
|
const { body, to, from } = context.propsValue;
|
|
29
|
-
const account_sid = context.
|
|
30
|
-
const auth_token = context.
|
|
30
|
+
const account_sid = context.auth.username;
|
|
31
|
+
const auth_token = context.auth.password;
|
|
31
32
|
return yield (0, common_1.callTwilioApi)(pieces_common_1.HttpMethod.POST, 'Messages.json', { account_sid, auth_token }, {
|
|
32
33
|
From: from,
|
|
33
34
|
Body: body,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-sms.js","sourceRoot":"","sources":["../../../../../../../packages/pieces/twilio/src/lib/action/send-sms.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAyD;AACzD,sCAAwD;
|
|
1
|
+
{"version":3,"file":"send-sms.js","sourceRoot":"","sources":["../../../../../../../packages/pieces/twilio/src/lib/action/send-sms.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAyD;AACzD,sCAAwD;AACxD,6BAAmC;AAEtB,QAAA,aAAa,GAAG,IAAA,+BAAY,EAAC;IACtC,IAAI,EAAE,cAAU;IAChB,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,wBAAwB;IACrC,WAAW,EAAE,UAAU;IACvB,KAAK,EAAE;QACH,IAAI,EAAE,qBAAY,CAAC,YAAY;QAC/B,IAAI,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACrB,WAAW,EAAE,iCAAiC;YAC9C,WAAW,EAAE,cAAc;YAC3B,QAAQ,EAAE,IAAI;SACjB,CAAC;QACF,EAAE,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACnB,WAAW,EAAE,yCAAyC;YACtD,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,IAAI;SACjB,CAAC;KACL;IACK,GAAG,CAAC,OAAO;;YACb,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC1C,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;YACzC,OAAO,MAAM,IAAA,sBAAa,EAAC,0BAAU,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE;gBACtF,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,EAAE,EAAE,EAAE;aACT,CAAC,CAAC;QAEP,CAAC;KAAA;CACJ,CAAC,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { HttpMethod, HttpMessageBody } from "@activepieces/pieces-common";
|
|
2
2
|
export declare const twilioCommon: {
|
|
3
|
-
authentication: import("@activepieces/pieces-framework").BasicAuthProperty<true>;
|
|
4
3
|
phone_number: import("@activepieces/pieces-framework").DropdownProperty<any, true>;
|
|
5
4
|
};
|
|
6
5
|
export declare const callTwilioApi: <T extends HttpMessageBody>(method: HttpMethod, path: string, auth: {
|
package/src/lib/common/index.js
CHANGED
|
@@ -5,33 +5,20 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
6
|
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
7
|
exports.twilioCommon = {
|
|
8
|
-
authentication: pieces_framework_1.Property.BasicAuth({
|
|
9
|
-
description: 'The authentication to use to connect to Twilio',
|
|
10
|
-
displayName: 'Authentication',
|
|
11
|
-
required: true,
|
|
12
|
-
username: {
|
|
13
|
-
displayName: 'Account SID',
|
|
14
|
-
description: 'The account SID to use to connect to Twilio',
|
|
15
|
-
},
|
|
16
|
-
password: {
|
|
17
|
-
displayName: 'Auth token',
|
|
18
|
-
description: 'The auth token to use to connect to Twilio',
|
|
19
|
-
}
|
|
20
|
-
}),
|
|
21
8
|
phone_number: pieces_framework_1.Property.Dropdown({
|
|
22
9
|
description: 'The phone number to send the message from',
|
|
23
10
|
displayName: 'From',
|
|
24
11
|
required: true,
|
|
25
|
-
refreshers: [
|
|
26
|
-
options: (
|
|
27
|
-
if (!
|
|
12
|
+
refreshers: [],
|
|
13
|
+
options: ({ auth }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
14
|
+
if (!auth) {
|
|
28
15
|
return {
|
|
29
16
|
disabled: true,
|
|
30
17
|
placeholder: 'connect your account first',
|
|
31
18
|
options: [],
|
|
32
19
|
};
|
|
33
20
|
}
|
|
34
|
-
const basicAuthProperty =
|
|
21
|
+
const basicAuthProperty = auth;
|
|
35
22
|
const response = yield (0, exports.callTwilioApi)(pieces_common_1.HttpMethod.GET, 'IncomingPhoneNumbers.json', {
|
|
36
23
|
account_sid: basicAuthProperty.username,
|
|
37
24
|
auth_token: basicAuthProperty.password
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/pieces/twilio/src/lib/common/index.ts"],"names":[],"mappings":";;;;AAAA,qEAAkF;AAClF,+DAA0G;AAE7F,QAAA,YAAY,GAAG;IACxB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/pieces/twilio/src/lib/common/index.ts"],"names":[],"mappings":";;;;AAAA,qEAAkF;AAClF,+DAA0G;AAE7F,QAAA,YAAY,GAAG;IACxB,YAAY,EAAE,2BAAQ,CAAC,QAAQ,CAAC;QAC5B,WAAW,EAAE,2CAA2C;QACxD,WAAW,EAAE,MAAM;QACnB,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,EAAE;QACd,OAAO,EAAE,CAAO,EAAE,IAAI,EAAE,EAAE,EAAE;YACxB,IAAI,CAAC,IAAI,EAAE;gBACP,OAAO;oBACH,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,4BAA4B;oBACzC,OAAO,EAAE,EAAE;iBACd,CAAC;aACL;YAED,MAAM,iBAAiB,GAAG,IAA8B,CAAC;YACzD,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAa,EAAgF,0BAAU,CAAC,GAAG,EAAE,2BAA2B,EAAE;gBAC7J,WAAW,EAAE,iBAAiB,CAAC,QAAQ;gBACvC,UAAU,EAAE,iBAAiB,CAAC,QAAQ;aACzC,CAAC,CAAC;YACH,OAAO;gBACH,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,MAAW,EAAE,EAAE,CAAC,CAAC;oBAChE,KAAK,EAAE,MAAM,CAAC,YAAY;oBAC1B,KAAK,EAAE,MAAM,CAAC,aAAa;iBAC9B,CAAC,CAAC;aACN,CAAA;QACL,CAAC,CAAA;KACJ,CAAC;CACL,CAAA;AAEM,MAAM,aAAa,GAAG,CAAkC,MAAkB,EAAE,IAAY,EAAE,IAAiD,EAAE,IAAU,EAAE,EAAE;IAC9J,OAAO,MAAM,0BAAU,CAAC,WAAW,CAAI;QACnC,MAAM;QACN,GAAG,EAAE,8CAA8C,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE;QAC7E,cAAc,EAAE;YACZ,IAAI,EAAE,kCAAkB,CAAC,KAAK;YAC9B,QAAQ,EAAE,IAAI,CAAC,WAAW;YAC1B,QAAQ,EAAE,IAAI,CAAC,UAAU;SAC5B;QACD,OAAO,EAAE;YACL,cAAc,EAAE,mCAAmC;SACtD;QACD,IAAI,EAAE,IAAI;KACb,CAAC,CAAC;AACP,CAAC,CAAA,CAAA;AAdY,QAAA,aAAa,iBAczB"}
|
|
@@ -1 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import { TriggerStrategy } from "@activepieces/pieces-framework";
|
|
2
|
+
export declare const twilioNewIncomingSms: import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@activepieces/pieces-framework").BasicAuthProperty<true>, {
|
|
3
|
+
phone_number: import("@activepieces/pieces-framework").DropdownProperty<any, true>;
|
|
4
|
+
}>;
|
|
@@ -5,12 +5,13 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
6
|
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
7
|
const common_1 = require("../common");
|
|
8
|
+
const __1 = require("../..");
|
|
8
9
|
exports.twilioNewIncomingSms = (0, pieces_framework_1.createTrigger)({
|
|
10
|
+
auth: __1.twilioAuth,
|
|
9
11
|
name: 'new_incoming_sms',
|
|
10
12
|
displayName: 'New Incoming SMS',
|
|
11
13
|
description: 'Triggers when a new SMS message is received',
|
|
12
14
|
props: {
|
|
13
|
-
authentication: common_1.twilioCommon.authentication,
|
|
14
15
|
phone_number: common_1.twilioCommon.phone_number,
|
|
15
16
|
},
|
|
16
17
|
sampleData: {
|
|
@@ -43,8 +44,8 @@ exports.twilioNewIncomingSms = (0, pieces_framework_1.createTrigger)({
|
|
|
43
44
|
onEnable(context) {
|
|
44
45
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
45
46
|
const { phone_number } = context.propsValue;
|
|
46
|
-
const account_sid = context.
|
|
47
|
-
const auth_token = context.
|
|
47
|
+
const account_sid = context.auth.username;
|
|
48
|
+
const auth_token = context.auth.password;
|
|
48
49
|
const response = yield (0, common_1.callTwilioApi)(pieces_common_1.HttpMethod.GET, `Messages.json?PageSize=20&To=${phone_number}`, { account_sid, auth_token, }, {});
|
|
49
50
|
yield context.store.put('_new_incoming_sms_trigger', {
|
|
50
51
|
lastMessageId: response.body.messages.length === 0 ? null : response.body.messages[0].sid,
|
|
@@ -58,8 +59,8 @@ exports.twilioNewIncomingSms = (0, pieces_framework_1.createTrigger)({
|
|
|
58
59
|
},
|
|
59
60
|
run(context) {
|
|
60
61
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
61
|
-
const account_sid = context.
|
|
62
|
-
const auth_token = context.
|
|
62
|
+
const account_sid = context.auth.username;
|
|
63
|
+
const auth_token = context.auth.password;
|
|
63
64
|
const newMessages = [];
|
|
64
65
|
const lastMessage = yield context.store.get('_new_incoming_sms_trigger');
|
|
65
66
|
let currentUri = `2010-04-01/Accounts/${account_sid}/Messages.json?PageSize=20&To=${context.propsValue.phone_number}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"new-incoming-sms.js","sourceRoot":"","sources":["../../../../../../../packages/pieces/twilio/src/lib/trigger/new-incoming-sms.ts"],"names":[],"mappings":";;;;AAAA,qEAAgF;AAChF,+DAAuG;AACvG,sCAAwD;
|
|
1
|
+
{"version":3,"file":"new-incoming-sms.js","sourceRoot":"","sources":["../../../../../../../packages/pieces/twilio/src/lib/trigger/new-incoming-sms.ts"],"names":[],"mappings":"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"}
|