|
12 | 12 |
|
13 | 13 | useproxy: { value: false, required: false },
|
14 | 14 | usewss: { value: false, required: false },
|
| 15 | + devicemodel: { value: "", required: false }, |
| 16 | + systemversion: { value: "", required: false }, |
| 17 | + appversion: { value: "", required: false }, |
| 18 | + |
15 | 19 | host: { value: "", required: false },
|
16 | 20 | sockstype: { value: "5", required: false },
|
17 | 21 | port: { value: 6667, required: false, validate:function(v) { return ((v === "") || (RED.validators.number(v) && (v >= 0) && (v <= 2147483))) }},
|
|
34 | 38 | },
|
35 | 39 | oneditprepare: function() {
|
36 | 40 | // polling or webhook
|
37 |
| - var updateLoginMode = function() { |
38 |
| - var mode = $("#node-config-input-loginmode").val(); |
| 41 | + let updateLoginMode = function() { |
| 42 | + let mode = $("#node-config-input-loginmode").val(); |
39 | 43 | if (mode == "user") {
|
40 | 44 | $("#phonenumber").show();
|
41 | 45 | $("#password").show();
|
|
51 | 55 |
|
52 | 56 |
|
53 | 57 | // proxy on / off
|
54 |
| - var useproxy = function() { |
55 |
| - var mode = $("#node-config-input-useproxy").prop('checked'); |
| 58 | + let useproxy = function() { |
| 59 | + let mode = $("#node-config-input-useproxy").prop('checked'); |
56 | 60 | if (mode === false) {
|
57 | 61 | $("#useproxy").hide();
|
58 | 62 | } else {
|
|
63 | 67 | $("#node-config-input-useproxy").change(useproxy);
|
64 | 68 |
|
65 | 69 |
|
66 |
| - var login = function() { |
| 70 | + let login = function() { |
67 | 71 | let apiId = $("#node-config-input-apiid").val();
|
68 | 72 | let apiHash = $("#node-config-input-apihash").val();
|
69 | 73 | let phoneNumber = $("#node-config-input-phonenumber").val();
|
70 | 74 | let password = $("#node-config-input-password").val();
|
71 | 75 | let botToken = $("#node-config-input-bottoken").val();
|
72 | 76 | let loginMode = $("#node-config-input-loginmode").val();
|
73 |
| - let useProxy = $("#node-config-input-useproxy").val(); |
74 |
| - let useWSS = $("#node-config-input-usewss").val(); |
| 77 | + let useProxy = $("#node-config-input-useproxy").prop('checked'); |
| 78 | + let useWSS = $("#node-config-input-usewss").prop('checked'); |
| 79 | + let devicemodel = $("#node-config-input-devicemodel").val(); |
| 80 | + let systemversion = $("#node-config-input-systemversion").val(); |
| 81 | + let appversion = $("#node-config-input-appversion").val(); |
75 | 82 | let proxy;
|
76 | 83 |
|
77 | 84 | if (useProxy) {
|
|
82 | 89 | username: $("#node-config-input-username").val(),
|
83 | 90 | password: $("#node-config-input-password").val(),
|
84 | 91 | secret: $("#node-config-input-secret").val(),
|
85 |
| - MTProxy: $("#node-config-input-mtproxy").val(), |
| 92 | + MTProxy: $("#node-config-input-mtproxy").prop('checked'), |
86 | 93 | timeout: Number($("#node-config-input-timeout").val()),
|
87 | 94 | };
|
88 | 95 | }
|
|
97 | 104 | loginMode : loginMode,
|
98 | 105 | proxy : proxy,
|
99 | 106 | useWSS : useWSS,
|
| 107 | + devicemodel : devicemodel, |
| 108 | + systemversion : systemversion, |
| 109 | + appversion : appversion, |
100 | 110 | }
|
101 | 111 |
|
102 | 112 | $("#loginbuttontip").text("Login started: enter code in field below.");
|
103 | 113 | $("#node-config-input-phonecode").val('');
|
104 | 114 | $("#node-config-input-session").val('');
|
105 | 115 | $.getJSON('node-red-node-telegrambot-login', parameters, function(data) {
|
106 | 116 | if(data.session){
|
107 |
| - debugger |
108 | 117 | $("#node-config-input-session").val(data.session);
|
109 | 118 | $("#loginbuttontip").text("Click Login button to request code for login: code will be sent via your phone.");
|
110 | 119 | $("#node-config-input-phonecode").val('');
|
|
119 | 128 | }
|
120 | 129 | }
|
121 | 130 |
|
122 |
| - var setPhoneCode = function() { |
| 131 | + let setPhoneCode = function() { |
123 | 132 | let phoneCode = $("#node-config-input-phonecode").val();
|
124 | 133 | if(phoneCode != ''){
|
125 | 134 | $("#loginbuttontip").text("Signing in using phone code ....");
|
|
132 | 141 | }
|
133 | 142 | }
|
134 | 143 |
|
135 |
| - var setPassword = function() { |
| 144 | + let setPassword = function() { |
136 | 145 | let password = $("#node-config-input-password").val();
|
137 | 146 | if(password != ''){
|
138 | 147 | $("#loginbuttontip").text("Signing in using password ....");
|
|
145 | 154 | }
|
146 | 155 | }
|
147 | 156 |
|
148 |
| - var showLoginButton = function() { |
| 157 | + let showLoginButton = function() { |
149 | 158 | let session = $("#node-config-input-session").val();
|
150 | 159 | if(session === ''){
|
151 | 160 | $("#loginpanel").show();
|
|
208 | 217 | <input type="text" id="node-config-input-apihash" placeholder="(Enter the hash here)">
|
209 | 218 | </div>
|
210 | 219 | <div class="form-tips" style="width: auto"><b>Tip:</b> If you don't have an application ID yet, you can create a new one here: <a href="https://my.telegram.org/auth">Telegram</a>.</div>
|
211 |
| - </div> |
| 220 | + |
| 221 | + <!-- optional client configuration parameters --> |
| 222 | + <div class="form-row"> |
| 223 | + <label for="node-config-input-devicemodel"><i class="fa fa-caret-right"></i> Device Model</label> |
| 224 | + <input type="text" id="node-config-input-devicemodel" placeholder="(Optional: device model)"> |
| 225 | + </div> |
| 226 | + <div class="form-row"> |
| 227 | + <label for="node-config-input-systemversion"><i class="fa fa-caret-right"></i> System Version</label> |
| 228 | + <input type="text" id="node-config-input-systemversion" placeholder="(Optional: system version)"> |
| 229 | + </div> |
| 230 | + <div class="form-row"> |
| 231 | + <label for="node-config-input-appversion"><i class="fa fa-caret-right"></i> App Version</label> |
| 232 | + <input type="text" id="node-config-input-appversion" placeholder="(Optional: app version)"> |
| 233 | + </div> |
| 234 | + </div> |
212 | 235 |
|
213 | 236 | <div class="form-row">
|
214 | 237 | <div class="form-row">
|
|
239 | 262 | <hr align="middle"/>
|
240 | 263 | </div>
|
241 | 264 |
|
242 |
| - <hr align="middle"/> |
| 265 | + <hr align="middle"/> |
243 | 266 |
|
244 | 267 | <div class="form-row">
|
245 | 268 | <label for="node-config-input-useproxy"><i class="fa fa-lock"></i> Use Proxy</label>
|
|
0 commit comments