iobroker.telegram-menu 2.2.4 → 2.3.1
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/README.md +18 -0
- package/admin/build/index.js +49 -49
- package/admin/build/index.js.map +3 -3
- package/admin/css/button.css +3 -0
- package/admin/css/row-editor.css +1 -1
- package/admin/css/style.css +46 -25
- package/admin/css/textarea.css +7 -11
- package/admin/i18n/de/translations.json +124 -123
- package/admin/i18n/en/translations.json +3 -2
- package/admin/i18n/es/translations.json +3 -2
- package/admin/i18n/fr/translations.json +3 -2
- package/admin/i18n/it/translations.json +3 -2
- package/admin/i18n/nl/translations.json +3 -2
- package/admin/i18n/pl/translations.json +3 -2
- package/admin/i18n/pt/translations.json +3 -2
- package/admin/i18n/ru/translations.json +3 -2
- package/admin/i18n/uk/translations.json +3 -2
- package/admin/i18n/zh-cn/translations.json +3 -2
- package/admin/words.js +3 -1
- package/build/admin/src/config/helper.js +178 -0
- package/build/admin/src/config/helper.js.map +1 -0
- package/build/admin/src/lib/Utils.js +64 -0
- package/build/admin/src/lib/Utils.js.map +1 -0
- package/build/admin/src/types/event.js +3 -0
- package/build/admin/src/types/event.js.map +1 -0
- package/build/app/action.js +270 -0
- package/build/app/action.js.map +7 -0
- package/build/app/adapterManager.js +36 -0
- package/build/app/adapterManager.js.map +7 -0
- package/build/app/adapterStartMenuSend.js +59 -0
- package/build/app/adapterStartMenuSend.js.map +7 -0
- package/build/app/backMenu.js +110 -0
- package/build/app/backMenu.js.map +7 -0
- package/build/app/botAction.js +47 -0
- package/build/app/botAction.js.map +7 -0
- package/build/app/configVariables.js +56 -0
- package/build/app/configVariables.js.map +7 -0
- package/build/app/connection.js +42 -0
- package/build/app/connection.js.map +7 -0
- package/build/app/createState.js +42 -0
- package/build/app/createState.js.map +7 -0
- package/build/app/dynamicSwitch.js +69 -0
- package/build/app/dynamicSwitch.js.map +7 -0
- package/build/app/dynamicSwitchMenu.js +69 -0
- package/build/app/dynamicSwitchMenu.js.map +7 -0
- package/build/app/dynamicValue.js +80 -0
- package/build/app/dynamicValue.js.map +7 -0
- package/build/app/echarts.js +60 -0
- package/build/app/echarts.js.map +7 -0
- package/build/app/getstate.js +149 -0
- package/build/app/getstate.js.map +7 -0
- package/build/app/global.js +2 -0
- package/build/app/global.js.map +7 -0
- package/build/app/httpRequest.js +84 -0
- package/build/app/httpRequest.js.map +7 -0
- package/build/app/jsonTable.js +158 -0
- package/build/app/jsonTable.js.map +7 -0
- package/build/app/logging.js +46 -0
- package/build/app/logging.js.map +7 -0
- package/build/app/messageIds.js +122 -0
- package/build/app/messageIds.js.map +7 -0
- package/build/app/processData.js +198 -0
- package/build/app/processData.js.map +7 -0
- package/build/app/sendNav.js +49 -0
- package/build/app/sendNav.js.map +7 -0
- package/build/app/sendpic.js +94 -0
- package/build/app/sendpic.js.map +7 -0
- package/build/app/sentry.js +43 -0
- package/build/app/sentry.js.map +7 -0
- package/build/app/setStateIdsToListenTo.js +42 -0
- package/build/app/setStateIdsToListenTo.js.map +7 -0
- package/build/app/setstate.js +145 -0
- package/build/app/setstate.js.map +7 -0
- package/build/app/shoppingList.js +97 -0
- package/build/app/shoppingList.js.map +7 -0
- package/build/app/subMenu.js +283 -0
- package/build/app/subMenu.js.map +7 -0
- package/build/app/subscribeStates.js +41 -0
- package/build/app/subscribeStates.js.map +7 -0
- package/build/app/telegram.js +136 -0
- package/build/app/telegram.js.map +7 -0
- package/build/app/validateMenus.js +64 -0
- package/build/app/validateMenus.js.map +7 -0
- package/build/build/src/app/action.js +447 -0
- package/build/build/src/app/adapterStartMenuSend.js +37 -0
- package/build/build/src/app/backMenu.js +70 -0
- package/build/build/src/app/botAction.js +25 -0
- package/build/build/src/app/connection.js +19 -0
- package/build/build/src/app/createState.js +19 -0
- package/build/build/src/app/dynamicSwitch.js +51 -0
- package/build/build/src/app/dynamicValue.js +64 -0
- package/build/build/src/app/echarts.js +45 -0
- package/build/build/src/app/getstate.js +157 -0
- package/build/build/src/app/global.js +59 -0
- package/build/build/src/app/httpRequest.js +64 -0
- package/build/build/src/app/jsonTable.js +147 -0
- package/build/build/src/app/logging.js +13 -0
- package/build/build/src/app/messageIds.js +88 -0
- package/build/build/src/app/processData.js +208 -0
- package/build/build/src/app/sendNav.js +30 -0
- package/build/build/src/app/sendpic.js +69 -0
- package/build/build/src/app/setstate.js +126 -0
- package/build/build/src/app/shoppingList.js +72 -0
- package/build/build/src/app/subMenu.js +361 -0
- package/build/build/src/app/subscribeStates.js +25 -0
- package/build/build/src/app/telegram.js +101 -0
- package/build/build/src/lib/string.js +28 -0
- package/build/build/src/lib/time.js +23 -0
- package/build/build/src/lib/utilities.js +263 -0
- package/build/build/src/lib/utils.js +13 -0
- package/build/build/src/main.js +402 -0
- package/build/config/config.js +134 -0
- package/build/config/config.js.map +7 -0
- package/build/io-package.json +87 -87
- package/build/lib/action.js +1 -3
- package/build/lib/action.js.map +2 -2
- package/build/lib/adapterStartMenuSend.js.map +1 -1
- package/build/lib/appUtils.js +157 -0
- package/build/lib/appUtils.js.map +7 -0
- package/build/lib/appUtilsString.js +37 -0
- package/build/lib/appUtilsString.js.map +7 -0
- package/build/lib/backMenu.js.map +2 -2
- package/build/lib/botAction.js.map +1 -1
- package/build/lib/dynamicSwitch.js.map +1 -1
- package/build/lib/dynamicValue.js.map +1 -1
- package/build/lib/echarts.js.map +1 -1
- package/build/lib/getstate.js.map +1 -1
- package/build/lib/global.js.map +1 -1
- package/build/lib/httpRequest.js.map +1 -1
- package/build/lib/json.js +54 -0
- package/build/lib/json.js.map +7 -0
- package/build/lib/jsonTable.js.map +1 -1
- package/build/lib/math.js +41 -0
- package/build/lib/math.js.map +7 -0
- package/build/lib/messageIds.js.map +1 -1
- package/build/lib/object.js +35 -0
- package/build/lib/object.js.map +7 -0
- package/build/lib/processData.js +4 -18
- package/build/lib/processData.js.map +3 -3
- package/build/lib/sendNav.js.map +1 -1
- package/build/lib/sendpic.js +23 -22
- package/build/lib/sendpic.js.map +2 -2
- package/build/lib/setstate.js.map +1 -1
- package/build/lib/shoppingList.js.map +1 -1
- package/build/lib/splitValues.js +63 -0
- package/build/lib/splitValues.js.map +7 -0
- package/build/lib/string.js +125 -3
- package/build/lib/string.js.map +2 -2
- package/build/lib/subMenu.js +1 -2
- package/build/lib/subMenu.js.map +2 -2
- package/build/lib/subscribeStates.js.map +1 -1
- package/build/lib/telegram.js.map +1 -1
- package/build/lib/time.js +93 -0
- package/build/lib/time.js.map +7 -0
- package/build/lib/utilities.js +86 -283
- package/build/lib/utilities.js.map +3 -3
- package/build/lib/utils.js +66 -0
- package/build/lib/utils.js.map +7 -0
- package/build/main.js +149 -233
- package/build/main.js.map +3 -3
- package/build/src/app/action.js +239 -0
- package/build/src/app/action.js.map +1 -0
- package/build/src/app/adapterManager.js +12 -0
- package/build/src/app/adapterManager.js.map +1 -0
- package/build/src/app/adapterStartMenuSend.js +36 -0
- package/build/src/app/adapterStartMenuSend.js.map +1 -0
- package/build/src/app/backMenu.js +81 -0
- package/build/src/app/backMenu.js.map +1 -0
- package/build/src/app/botAction.js +25 -0
- package/build/src/app/botAction.js.map +1 -0
- package/build/src/app/configVariables.js +32 -0
- package/build/src/app/configVariables.js.map +1 -0
- package/build/src/app/connection.js +20 -0
- package/build/src/app/connection.js.map +1 -0
- package/build/src/app/createState.js +19 -0
- package/build/src/app/createState.js.map +1 -0
- package/build/src/app/dynamicSwitch.js +52 -0
- package/build/src/app/dynamicSwitch.js.map +1 -0
- package/build/src/app/dynamicSwitchMenu.js +52 -0
- package/build/src/app/dynamicSwitchMenu.js.map +1 -0
- package/build/src/app/dynamicValue.js +52 -0
- package/build/src/app/dynamicValue.js.map +1 -0
- package/build/src/app/echarts.js +33 -0
- package/build/src/app/echarts.js.map +1 -0
- package/build/src/app/getstate.js +122 -0
- package/build/src/app/getstate.js.map +1 -0
- package/build/src/app/global.js +8 -0
- package/build/src/app/global.js.map +1 -0
- package/build/src/app/httpRequest.js +55 -0
- package/build/src/app/httpRequest.js.map +1 -0
- package/build/src/app/jsonTable.js +147 -0
- package/build/src/app/jsonTable.js.map +1 -0
- package/build/src/app/logging.js +22 -0
- package/build/src/app/logging.js.map +1 -0
- package/build/src/app/messageIds.js +89 -0
- package/build/src/app/messageIds.js.map +1 -0
- package/build/src/app/processData.js +153 -0
- package/build/src/app/processData.js.map +1 -0
- package/build/src/app/sendNav.js +26 -0
- package/build/src/app/sendNav.js.map +1 -0
- package/build/src/app/sendpic.js +66 -0
- package/build/src/app/sendpic.js.map +1 -0
- package/build/src/app/sentry.js +18 -0
- package/build/src/app/sentry.js.map +1 -0
- package/build/src/app/setStateIdsToListenTo.js +17 -0
- package/build/src/app/setStateIdsToListenTo.js.map +1 -0
- package/build/src/app/setstate.js +114 -0
- package/build/src/app/setstate.js.map +1 -0
- package/build/src/app/shoppingList.js +74 -0
- package/build/src/app/shoppingList.js.map +1 -0
- package/build/src/app/subMenu.js +237 -0
- package/build/src/app/subMenu.js.map +1 -0
- package/build/src/app/subscribeStates.js +17 -0
- package/build/src/app/subscribeStates.js.map +1 -0
- package/build/src/app/telegram.js +83 -0
- package/build/src/app/telegram.js.map +1 -0
- package/build/src/app/validateMenus.js +30 -0
- package/build/src/app/validateMenus.js.map +1 -0
- package/build/src/config/config.js +100 -0
- package/build/src/config/config.js.map +1 -0
- package/build/src/lib/appUtils.js +126 -0
- package/build/src/lib/appUtils.js.map +1 -0
- package/build/src/lib/appUtilsString.js +13 -0
- package/build/src/lib/appUtilsString.js.map +1 -0
- package/build/src/lib/json.js +37 -0
- package/build/src/lib/json.js.map +1 -0
- package/build/src/lib/math.js +17 -0
- package/build/src/lib/math.js.map +1 -0
- package/build/src/lib/object.js +10 -0
- package/build/src/lib/object.js.map +1 -0
- package/build/src/lib/splitValues.js +35 -0
- package/build/src/lib/splitValues.js.map +1 -0
- package/build/src/lib/string.js +121 -0
- package/build/src/lib/string.js.map +1 -0
- package/build/src/lib/time.js +57 -0
- package/build/src/lib/time.js.map +1 -0
- package/build/src/lib/utilities.js +111 -0
- package/build/src/lib/utilities.js.map +1 -0
- package/build/src/lib/utils.js +37 -0
- package/build/src/lib/utils.js.map +1 -0
- package/build/src/main.js +332 -0
- package/build/src/main.js.map +1 -0
- package/build/src/test/setup.js +12 -0
- package/build/src/test/setup.js.map +1 -0
- package/build/src/types/types.js +3 -0
- package/build/src/types/types.js.map +1 -0
- package/build/test/integration.js +0 -1
- package/build/test/integration.js.map +1 -1
- package/build/test/mocha.setup.js +0 -1
- package/build/test/mocha.setup.js.map +1 -1
- package/build/test/package.js +0 -1
- package/build/test/package.js.map +1 -1
- package/build/test/setup.js +12 -0
- package/build/test/setup.js.map +1 -0
- package/build/test/test/appUtils.test.js +519 -0
- package/build/test/test/appUtils.test.js.map +1 -0
- package/build/test/test/appUtilsString.test.js +16 -0
- package/build/test/test/appUtilsString.test.js.map +1 -0
- package/build/test/test/math.test.js +33 -0
- package/build/test/test/math.test.js.map +1 -0
- package/build/test/test/object.test.js +66 -0
- package/build/test/test/object.test.js.map +1 -0
- package/build/test/test/string.test.js +385 -0
- package/build/test/test/string.test.js.map +1 -0
- package/build/test/test/time.test.js +186 -0
- package/build/test/test/time.test.js.map +1 -0
- package/build/test/test/utils.test.js +115 -0
- package/build/test/test/utils.test.js.map +1 -0
- package/build/types/types.js +15 -0
- package/build/types/types.js.map +3 -3
- package/io-package.json +32 -27
- package/package.json +14 -10
- package/build/main.test.js +0 -24
- package/build/main.test.js.map +0 -1
package/build/main.js
CHANGED
|
@@ -28,27 +28,28 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
29
|
var main_exports = {};
|
|
30
30
|
__export(main_exports, {
|
|
31
|
-
_this: () => _this,
|
|
32
31
|
adapter: () => adapter,
|
|
33
32
|
default: () => TelegramMenu
|
|
34
33
|
});
|
|
35
34
|
module.exports = __toCommonJS(main_exports);
|
|
36
35
|
var utils = __toESM(require("@iobroker/adapter-core"));
|
|
37
|
-
var import_action = require("./
|
|
38
|
-
var import_subscribeStates = require("./
|
|
39
|
-
var import_telegram = require("./
|
|
40
|
-
var
|
|
41
|
-
var
|
|
42
|
-
var
|
|
43
|
-
var
|
|
44
|
-
var
|
|
45
|
-
var
|
|
46
|
-
var
|
|
47
|
-
var
|
|
48
|
-
var
|
|
36
|
+
var import_action = require("./app/action.js");
|
|
37
|
+
var import_subscribeStates = require("./app/subscribeStates.js");
|
|
38
|
+
var import_telegram = require("./app/telegram.js");
|
|
39
|
+
var import_createState = require("./app/createState.js");
|
|
40
|
+
var import_messageIds = require("./app/messageIds.js");
|
|
41
|
+
var import_adapterStartMenuSend = require("./app/adapterStartMenuSend.js");
|
|
42
|
+
var import_processData = require("./app/processData.js");
|
|
43
|
+
var import_shoppingList = require("./app/shoppingList.js");
|
|
44
|
+
var import_logging = require("./app/logging.js");
|
|
45
|
+
var import_connection = require("./app/connection.js");
|
|
46
|
+
var import_string = require("./lib/string");
|
|
47
|
+
var import_utils = require("./lib/utils");
|
|
48
|
+
var import_appUtils = require("./lib/appUtils");
|
|
49
|
+
var import_configVariables = require("./app/configVariables");
|
|
50
|
+
var import_setStateIdsToListenTo = require("./app/setStateIdsToListenTo");
|
|
49
51
|
const timeoutKey = "0";
|
|
50
|
-
let
|
|
51
|
-
let _this;
|
|
52
|
+
let adapter;
|
|
52
53
|
class TelegramMenu extends utils.Adapter {
|
|
53
54
|
static instance;
|
|
54
55
|
/**
|
|
@@ -63,92 +64,67 @@ class TelegramMenu extends utils.Adapter {
|
|
|
63
64
|
this.on("unload", this.onUnload.bind(this));
|
|
64
65
|
TelegramMenu.instance = this;
|
|
65
66
|
}
|
|
66
|
-
static getInstance() {
|
|
67
|
-
return TelegramMenu.instance;
|
|
68
|
-
}
|
|
69
67
|
async onReady() {
|
|
70
|
-
|
|
68
|
+
adapter = this;
|
|
71
69
|
await this.setState("info.connection", false, true);
|
|
72
70
|
await (0, import_createState.createState)(this);
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}
|
|
90
|
-
const
|
|
91
|
-
const
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
const startSides = {};
|
|
98
|
-
const menuData = {
|
|
99
|
-
data: {}
|
|
100
|
-
};
|
|
101
|
-
Object.keys(menusWithUsers).forEach((element) => {
|
|
102
|
-
startSides[element] = dataObject.nav[element][0].call;
|
|
103
|
-
});
|
|
104
|
-
await this.getForeignObject(infoConnectionOfTelegram, async (err, obj) => {
|
|
105
|
-
try {
|
|
106
|
-
if (err || obj == null) {
|
|
71
|
+
const {
|
|
72
|
+
requestMessageID,
|
|
73
|
+
directoryPicture,
|
|
74
|
+
telegramParams,
|
|
75
|
+
telegramID,
|
|
76
|
+
menusWithUsers,
|
|
77
|
+
infoConnectionOfTelegram,
|
|
78
|
+
listOfMenus,
|
|
79
|
+
isUserActiveCheckbox,
|
|
80
|
+
checkboxNoEntryFound,
|
|
81
|
+
textNoEntryFound,
|
|
82
|
+
botSendMessageID,
|
|
83
|
+
sendMenuAfterRestart,
|
|
84
|
+
token,
|
|
85
|
+
dataObject,
|
|
86
|
+
checkboxes
|
|
87
|
+
} = (0, import_configVariables.getConfigVariables)(this.config);
|
|
88
|
+
const { telegramInstance } = telegramParams;
|
|
89
|
+
const menuData = {};
|
|
90
|
+
const startSides = (0, import_appUtils.getStartSides)(menusWithUsers, dataObject);
|
|
91
|
+
try {
|
|
92
|
+
await this.getForeignObject(infoConnectionOfTelegram, async (err, obj) => {
|
|
93
|
+
var _a;
|
|
94
|
+
if (err || !obj) {
|
|
107
95
|
this.log.error(`The State ${infoConnectionOfTelegram} was not found! ${err}`);
|
|
108
96
|
return;
|
|
109
97
|
}
|
|
110
|
-
|
|
111
|
-
if (!isTelegramActive) {
|
|
98
|
+
if (!await (0, import_connection.checkIsTelegramActive)(infoConnectionOfTelegram)) {
|
|
112
99
|
return;
|
|
113
100
|
}
|
|
114
101
|
const { nav, action } = dataObject;
|
|
115
102
|
this.log.info("Telegram was found");
|
|
116
103
|
for (const name in nav) {
|
|
117
|
-
const
|
|
118
|
-
const
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
}
|
|
122
|
-
const generatedActions = (0, import_action.generateActions)(
|
|
123
|
-
action[name],
|
|
124
|
-
menuData.data[name]
|
|
125
|
-
);
|
|
104
|
+
const splittedNavigation = (0, import_appUtils.splitNavigation)(nav[name]);
|
|
105
|
+
const newStructure = (0, import_appUtils.getNewStructure)(splittedNavigation);
|
|
106
|
+
const generatedActions = (0, import_action.generateActions)({ action: action[name], userObject: newStructure });
|
|
107
|
+
menuData[name] = newStructure;
|
|
126
108
|
if (generatedActions) {
|
|
127
|
-
menuData
|
|
128
|
-
subscribeForeignStateIds = generatedActions == null ? void 0 : generatedActions.ids;
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
if (subscribeForeignStateIds && (subscribeForeignStateIds == null ? void 0 : subscribeForeignStateIds.length) > 0) {
|
|
133
|
-
await (0, import_subscribeStates._subscribeForeignStatesAsync)(subscribeForeignStateIds);
|
|
109
|
+
menuData[name] = generatedActions == null ? void 0 : generatedActions.obj;
|
|
110
|
+
const subscribeForeignStateIds = generatedActions == null ? void 0 : generatedActions.ids;
|
|
111
|
+
if (subscribeForeignStateIds == null ? void 0 : subscribeForeignStateIds.length) {
|
|
112
|
+
await (0, import_subscribeStates._subscribeForeignStates)(subscribeForeignStateIds);
|
|
113
|
+
}
|
|
134
114
|
} else {
|
|
135
|
-
|
|
115
|
+
adapter.log.debug("No Actions generated!");
|
|
136
116
|
}
|
|
137
|
-
if (dataObject.action[name]
|
|
117
|
+
if ((_a = dataObject.action[name]) == null ? void 0 : _a.events) {
|
|
138
118
|
for (const event of dataObject.action[name].events) {
|
|
139
|
-
await (0, import_subscribeStates.
|
|
119
|
+
await (0, import_subscribeStates._subscribeForeignStates)(event.ID);
|
|
140
120
|
}
|
|
141
121
|
}
|
|
142
|
-
(
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
{ text: "Gen. Actions: ", val: menuData.data[name] }
|
|
146
|
-
]);
|
|
122
|
+
adapter.log.debug(`Menu: ${name}`);
|
|
123
|
+
adapter.log.debug(`Array Buttons: ${(0, import_string.jsonString)(splittedNavigation)}`);
|
|
124
|
+
adapter.log.debug(`Gen. Actions: ${(0, import_string.jsonString)(menuData[name])}`);
|
|
147
125
|
}
|
|
148
|
-
(0,
|
|
149
|
-
|
|
150
|
-
{ text: "MenuList", val: listOfMenus }
|
|
151
|
-
]);
|
|
126
|
+
adapter.log.debug(`Checkbox: ${(0, import_string.jsonString)(checkboxes)}`);
|
|
127
|
+
adapter.log.debug(`MenuList: ${(0, import_string.jsonString)(listOfMenus)}`);
|
|
152
128
|
if (sendMenuAfterRestart) {
|
|
153
129
|
await (0, import_adapterStartMenuSend.adapterStartMenuSend)(
|
|
154
130
|
listOfMenus,
|
|
@@ -156,197 +132,139 @@ class TelegramMenu extends utils.Adapter {
|
|
|
156
132
|
isUserActiveCheckbox,
|
|
157
133
|
menusWithUsers,
|
|
158
134
|
menuData,
|
|
159
|
-
|
|
160
|
-
instanceTelegram,
|
|
161
|
-
resize_keyboard,
|
|
162
|
-
one_time_keyboard
|
|
135
|
+
telegramParams
|
|
163
136
|
);
|
|
164
137
|
}
|
|
165
138
|
this.on("stateChange", async (id, state) => {
|
|
166
|
-
|
|
167
|
-
const
|
|
168
|
-
|
|
139
|
+
var _a2, _b, _c;
|
|
140
|
+
const setStateIdsToListenTo = (0, import_setStateIdsToListenTo.getStateIdsToListenTo)();
|
|
141
|
+
const isTelegramInstanceActive = await this.checkInfoConnection(id, infoConnectionOfTelegram);
|
|
142
|
+
if (!isTelegramInstanceActive) {
|
|
169
143
|
return;
|
|
170
144
|
}
|
|
171
|
-
const
|
|
172
|
-
if (
|
|
145
|
+
const { userToSend, error } = await this.getChatIDAndUserToSend(telegramParams);
|
|
146
|
+
if (error) {
|
|
173
147
|
return;
|
|
174
148
|
}
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
await (0, import_shoppingList.shoppingListSubscribeStateAndDeleteItem)(
|
|
178
|
-
state.val,
|
|
179
|
-
instanceTelegram,
|
|
180
|
-
userListWithChatID,
|
|
181
|
-
resize_keyboard,
|
|
182
|
-
one_time_keyboard
|
|
183
|
-
);
|
|
149
|
+
if (this.isAddToShoppingList(id, userToSend)) {
|
|
150
|
+
await (0, import_shoppingList.deleteMessageAndSendNewShoppingList)(telegramParams, userToSend);
|
|
184
151
|
return;
|
|
185
152
|
}
|
|
186
|
-
if (
|
|
187
|
-
await (0, import_shoppingList.deleteMessageAndSendNewShoppingList)(instanceTelegram, userListWithChatID, userToSend);
|
|
153
|
+
if (!state || !(0, import_utils.isDefined)(state.val)) {
|
|
188
154
|
return;
|
|
189
155
|
}
|
|
190
|
-
if (
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
userListWithChatID,
|
|
196
|
-
instanceTelegram,
|
|
197
|
-
resize_keyboard,
|
|
198
|
-
one_time_keyboard,
|
|
199
|
-
menusWithUsers
|
|
200
|
-
)) {
|
|
156
|
+
if ((0, import_string.isString)(state.val) && state.val.includes("sList:")) {
|
|
157
|
+
await (0, import_shoppingList.shoppingListSubscribeStateAndDeleteItem)(state.val, telegramParams);
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
if (await (0, import_action.checkEvent)(dataObject, id, state, menuData, telegramParams, menusWithUsers)) {
|
|
201
161
|
return;
|
|
202
162
|
}
|
|
203
|
-
if (this.isMessageID(id, botSendMessageID, requestMessageID)
|
|
204
|
-
await (0, import_messageIds.saveMessageIds)(state,
|
|
163
|
+
if (this.isMessageID(id, botSendMessageID, requestMessageID)) {
|
|
164
|
+
await (0, import_messageIds.saveMessageIds)(state, telegramInstance);
|
|
205
165
|
} else if (this.isMenuToSend(state, id, telegramID, userToSend)) {
|
|
206
|
-
|
|
207
|
-
if (!value || !userToSend) {
|
|
208
|
-
return;
|
|
209
|
-
}
|
|
210
|
-
value = value.toString();
|
|
166
|
+
const value = state.val.toString();
|
|
211
167
|
const calledValue = value.slice(value.indexOf("]") + 1, value.length);
|
|
212
|
-
const menus = (0,
|
|
168
|
+
const menus = (0, import_appUtils.getListOfMenusIncludingUser)(menusWithUsers, userToSend);
|
|
213
169
|
const dataFound = await (0, import_processData.checkEveryMenuForData)({
|
|
214
170
|
menuData,
|
|
215
171
|
calledValue,
|
|
216
172
|
userToSend,
|
|
217
|
-
|
|
218
|
-
resize_keyboard,
|
|
219
|
-
one_time_keyboard,
|
|
220
|
-
userListWithChatID,
|
|
173
|
+
telegramParams,
|
|
221
174
|
menus,
|
|
222
175
|
isUserActiveCheckbox,
|
|
223
176
|
token,
|
|
224
177
|
directoryPicture,
|
|
225
178
|
timeoutKey
|
|
226
179
|
});
|
|
227
|
-
(0,
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
]);
|
|
231
|
-
if (!dataFound && checkboxNoEntryFound && userToSend) {
|
|
232
|
-
(0, import_logging.debug)([{ text: "No Entry found" }]);
|
|
180
|
+
this.log.debug(`Groups with searched User: ${(0, import_string.jsonString)(menus)}`);
|
|
181
|
+
if (!dataFound && checkboxNoEntryFound) {
|
|
182
|
+
adapter.log.debug("No Entry found");
|
|
233
183
|
await (0, import_telegram.sendToTelegram)({
|
|
234
|
-
|
|
184
|
+
userToSend,
|
|
235
185
|
textToSend: textNoEntryFound,
|
|
236
|
-
|
|
237
|
-
resize_keyboard,
|
|
238
|
-
one_time_keyboard,
|
|
239
|
-
userListWithChatID,
|
|
240
|
-
parse_mode: "false"
|
|
186
|
+
telegramParams
|
|
241
187
|
});
|
|
242
188
|
}
|
|
243
189
|
return;
|
|
244
190
|
}
|
|
245
|
-
if (state && setStateIdsToListenTo
|
|
246
|
-
(0,
|
|
247
|
-
|
|
248
|
-
{
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
(0,
|
|
254
|
-
{
|
|
255
|
-
|
|
256
|
-
]);
|
|
257
|
-
if (!(0, import_global.isFalsy)(element.confirm) && !(state == null ? void 0 : state.ack) && element.returnText.includes("{confirmSet:")) {
|
|
258
|
-
const substring = (0, import_utilities.decomposeText)(
|
|
259
|
-
element.returnText,
|
|
260
|
-
"{confirmSet:",
|
|
261
|
-
"}"
|
|
262
|
-
).substring.split(":");
|
|
263
|
-
(0, import_logging.debug)([{ text: "Substring:", val: substring }]);
|
|
191
|
+
if (state && (setStateIdsToListenTo == null ? void 0 : setStateIdsToListenTo.find((element) => element.id == id))) {
|
|
192
|
+
adapter.log.debug(`Subscribed state changed: { id : ${id} , state : ${(0, import_string.jsonString)(state)} }`);
|
|
193
|
+
for (const el of setStateIdsToListenTo) {
|
|
194
|
+
const { id: elId, userToSend: userToSend2, confirm, returnText, parse_mode } = el;
|
|
195
|
+
const key = setStateIdsToListenTo.indexOf(el);
|
|
196
|
+
if (elId == id) {
|
|
197
|
+
adapter.log.debug(`Send Value: ${(0, import_string.jsonString)(el)}`);
|
|
198
|
+
adapter.log.debug(`State: ${(0, import_string.jsonString)(state)}`);
|
|
199
|
+
if ((0, import_utils.isTruthy)(confirm) && !(state == null ? void 0 : state.ack) && returnText.includes("{confirmSet:")) {
|
|
200
|
+
const { substring } = (0, import_string.decomposeText)(returnText, "{confirmSet:", "}");
|
|
201
|
+
const splitSubstring = substring.split(":");
|
|
264
202
|
let text = "";
|
|
265
|
-
if ((0,
|
|
266
|
-
text =
|
|
203
|
+
if ((0, import_utils.isDefined)(state.val)) {
|
|
204
|
+
text = ((_a2 = splitSubstring[2]) == null ? void 0 : _a2.includes("noValue")) ? splitSubstring[1] : (0, import_appUtils.exchangePlaceholderWithValue)(splitSubstring[1], state.val.toString());
|
|
267
205
|
}
|
|
268
|
-
|
|
206
|
+
adapter.log.debug(`Return-text: ${text}`);
|
|
269
207
|
if (text === "") {
|
|
270
|
-
|
|
208
|
+
adapter.log.error("The return text cannot be empty, please check.");
|
|
271
209
|
}
|
|
272
|
-
(0, import_telegram.sendToTelegram)({
|
|
273
|
-
user: element.userToSend,
|
|
210
|
+
await (0, import_telegram.sendToTelegram)({
|
|
274
211
|
textToSend: text,
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
userListWithChatID,
|
|
279
|
-
parse_mode: element.parse_mode
|
|
280
|
-
}).catch((e) => {
|
|
281
|
-
(0, import_logging.error)([
|
|
282
|
-
{ text: "Error SendToTelegram" },
|
|
283
|
-
{ val: e.message },
|
|
284
|
-
{ text: "Error", val: e.stack }
|
|
285
|
-
]);
|
|
212
|
+
parse_mode,
|
|
213
|
+
userToSend: userToSend2,
|
|
214
|
+
telegramParams
|
|
286
215
|
});
|
|
287
|
-
|
|
216
|
+
continue;
|
|
288
217
|
}
|
|
289
|
-
(0,
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
val: { confirm: element.confirm, ack: state == null ? void 0 : state.ack, val: state == null ? void 0 : state.val }
|
|
293
|
-
}
|
|
294
|
-
]);
|
|
295
|
-
if (!(0, import_global.isFalsy)(element.confirm) && (state == null ? void 0 : state.ack)) {
|
|
296
|
-
let textToSend = element.returnText;
|
|
218
|
+
adapter.log.debug(`Data: ${(0, import_string.jsonString)({ confirm, ack: state == null ? void 0 : state.ack, val: state == null ? void 0 : state.val })}`);
|
|
219
|
+
if (!(0, import_utils.isFalsy)(confirm) && (state == null ? void 0 : state.ack)) {
|
|
220
|
+
let textToSend = returnText;
|
|
297
221
|
if (textToSend.includes("{confirmSet:")) {
|
|
298
|
-
const
|
|
299
|
-
textToSend =
|
|
222
|
+
const { textExcludeSubstring } = (0, import_string.decomposeText)(textToSend, "{confirmSet:", "}");
|
|
223
|
+
textToSend = textExcludeSubstring;
|
|
300
224
|
}
|
|
301
225
|
let value = "";
|
|
302
226
|
let valueChange = null;
|
|
303
|
-
const
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
227
|
+
const {
|
|
228
|
+
newValue,
|
|
229
|
+
textToSend: changedText,
|
|
230
|
+
error: error2
|
|
231
|
+
} = (0, import_string.getValueToExchange)(adapter, textToSend, (_b = state.val) == null ? void 0 : _b.toString());
|
|
232
|
+
if (!error2) {
|
|
233
|
+
valueChange = newValue;
|
|
234
|
+
textToSend = changedText;
|
|
307
235
|
}
|
|
308
236
|
if (textToSend == null ? void 0 : textToSend.toString().includes("{novalue}")) {
|
|
309
237
|
value = "";
|
|
310
238
|
textToSend = textToSend.replace("{novalue}", "");
|
|
311
|
-
} else if ((0,
|
|
312
|
-
value = (
|
|
239
|
+
} else if ((0, import_utils.isDefined)(state == null ? void 0 : state.val)) {
|
|
240
|
+
value = (_c = state.val) == null ? void 0 : _c.toString();
|
|
313
241
|
}
|
|
314
|
-
if (valueChange) {
|
|
242
|
+
if ((0, import_utils.isDefined)(valueChange)) {
|
|
315
243
|
value = valueChange;
|
|
316
244
|
}
|
|
317
|
-
|
|
318
|
-
textToSend = (0,
|
|
319
|
-
(0, import_telegram.sendToTelegram)({
|
|
320
|
-
|
|
245
|
+
adapter.log.debug(`Value to send: ${value}`);
|
|
246
|
+
textToSend = (0, import_appUtils.exchangePlaceholderWithValue)(textToSend, value);
|
|
247
|
+
await (0, import_telegram.sendToTelegram)({
|
|
248
|
+
userToSend: userToSend2,
|
|
321
249
|
textToSend,
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
resize_keyboard,
|
|
325
|
-
one_time_keyboard,
|
|
326
|
-
userListWithChatID,
|
|
327
|
-
parse_mode: element.parse_mode
|
|
328
|
-
}).catch((e) => {
|
|
329
|
-
(0, import_logging.error)([
|
|
330
|
-
{ text: "Error sendToTelegram" },
|
|
331
|
-
{ val: e.message },
|
|
332
|
-
{ text: "Error", val: e.stack }
|
|
333
|
-
]);
|
|
250
|
+
parse_mode,
|
|
251
|
+
telegramParams
|
|
334
252
|
});
|
|
335
253
|
setStateIdsToListenTo.splice(key, 1);
|
|
336
254
|
}
|
|
337
255
|
}
|
|
338
|
-
}
|
|
256
|
+
}
|
|
339
257
|
}
|
|
340
258
|
});
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
}
|
|
259
|
+
});
|
|
260
|
+
} catch (e) {
|
|
261
|
+
(0, import_logging.errorLogger)("Error onReady", e, adapter);
|
|
262
|
+
}
|
|
345
263
|
await this.subscribeForeignStatesAsync(botSendMessageID);
|
|
346
264
|
await this.subscribeForeignStatesAsync(requestMessageID);
|
|
347
|
-
await this.subscribeForeignStatesAsync(`${
|
|
265
|
+
await this.subscribeForeignStatesAsync(`${telegramInstance}.communicate.requestChatId`);
|
|
348
266
|
await this.subscribeForeignStatesAsync(telegramID);
|
|
349
|
-
await this.subscribeForeignStatesAsync(`${
|
|
267
|
+
await this.subscribeForeignStatesAsync(`${telegramInstance}.info.connection`);
|
|
350
268
|
}
|
|
351
269
|
isMessageID(id, botSendMessageID, requestMessageID) {
|
|
352
270
|
return id == botSendMessageID || id == requestMessageID;
|
|
@@ -355,12 +273,11 @@ class TelegramMenu extends utils.Adapter {
|
|
|
355
273
|
return !!(id.includes("alexa-shoppinglist") && !id.includes("add_position") && userToSend);
|
|
356
274
|
}
|
|
357
275
|
isMenuToSend(state, id, telegramID, userToSend) {
|
|
358
|
-
return !!(state
|
|
276
|
+
return !!(typeof (state == null ? void 0 : state.val) === "string" && state.val != "" && id == telegramID && (state == null ? void 0 : state.ack) && userToSend);
|
|
359
277
|
}
|
|
360
278
|
async checkInfoConnection(id, infoConnectionOfTelegram) {
|
|
361
279
|
if (id === infoConnectionOfTelegram) {
|
|
362
|
-
|
|
363
|
-
if (!isActive) {
|
|
280
|
+
if (!await (0, import_connection.checkIsTelegramActive)(infoConnectionOfTelegram)) {
|
|
364
281
|
this.log.debug("Telegram is not active");
|
|
365
282
|
return false;
|
|
366
283
|
}
|
|
@@ -368,18 +285,19 @@ class TelegramMenu extends utils.Adapter {
|
|
|
368
285
|
}
|
|
369
286
|
return true;
|
|
370
287
|
}
|
|
371
|
-
async getChatIDAndUserToSend(
|
|
372
|
-
const
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
288
|
+
async getChatIDAndUserToSend(telegramParams) {
|
|
289
|
+
const { telegramInstance, userListWithChatID } = telegramParams;
|
|
290
|
+
const chatIDState = await this.getForeignStateAsync(`${telegramInstance}.communicate.requestChatId`);
|
|
291
|
+
if (!(chatIDState == null ? void 0 : chatIDState.val)) {
|
|
292
|
+
adapter.log.debug("ChatID not found");
|
|
293
|
+
return { chatID: "", userToSend: "", error: true, errorMessage: "ChatId not found" };
|
|
376
294
|
}
|
|
377
|
-
const userToSend = (0, import_action.getUserToSendFromUserListWithChatID)(userListWithChatID,
|
|
295
|
+
const userToSend = (0, import_action.getUserToSendFromUserListWithChatID)(userListWithChatID, chatIDState.val.toString());
|
|
378
296
|
if (!userToSend) {
|
|
379
297
|
this.log.debug("User to send not found");
|
|
380
|
-
return;
|
|
298
|
+
return { chatID: chatIDState.val.toString(), userToSend: "", error: true, errorMessage: "User not found" };
|
|
381
299
|
}
|
|
382
|
-
return { chatID:
|
|
300
|
+
return { chatID: chatIDState.val.toString(), userToSend, error: false };
|
|
383
301
|
}
|
|
384
302
|
/**
|
|
385
303
|
* Is called when adapter shuts down - callback has to be called under any circumstances!
|
|
@@ -389,12 +307,12 @@ class TelegramMenu extends utils.Adapter {
|
|
|
389
307
|
onUnload(callback) {
|
|
390
308
|
const timeouts = (0, import_processData.getTimeouts)();
|
|
391
309
|
try {
|
|
392
|
-
timeouts.forEach((
|
|
393
|
-
clearTimeout(
|
|
310
|
+
timeouts.forEach(({ timeout }) => {
|
|
311
|
+
adapter.clearTimeout(timeout);
|
|
394
312
|
});
|
|
395
313
|
callback();
|
|
396
314
|
} catch (e) {
|
|
397
|
-
|
|
315
|
+
(0, import_logging.errorLogger)(e, "Error onUnload", adapter);
|
|
398
316
|
callback();
|
|
399
317
|
}
|
|
400
318
|
}
|
|
@@ -409,15 +327,13 @@ class TelegramMenu extends utils.Adapter {
|
|
|
409
327
|
}
|
|
410
328
|
}
|
|
411
329
|
}
|
|
412
|
-
let adapter;
|
|
413
330
|
if (require.main !== module) {
|
|
414
|
-
|
|
331
|
+
module.exports = (options) => new TelegramMenu(options);
|
|
415
332
|
} else {
|
|
416
|
-
new TelegramMenu();
|
|
333
|
+
(() => new TelegramMenu())();
|
|
417
334
|
}
|
|
418
335
|
// Annotate the CommonJS export names for ESM import in node:
|
|
419
336
|
0 && (module.exports = {
|
|
420
|
-
_this,
|
|
421
337
|
adapter
|
|
422
338
|
});
|
|
423
339
|
//# sourceMappingURL=main.js.map
|