Rev 2153 | Rev 2182 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed
| Rev 2153 | Rev 2181 | ||
|---|---|---|---|
| Line 116... | Line 116... | ||
| 116 | { |
116 | { |
| 117 | Log("DTMF decoded number is to short, number: \"" + number + "\", length: " + number.length); |
117 | Log("DTMF decoded number is to short, number: \"" + number + "\", length: " + number.length); |
| 118 | return; |
118 | return; |
| 119 | } |
119 | } |
| 120 | 120 | ||
| - | 121 | /* Adding area code prefix if needed */ |
|
| - | 122 | if (number.charAt(0) != '0' && checkName) |
|
| - | 123 | { |
|
| - | 124 | if (typeof sensorDefaultPhoneAreaCode === 'undefined') |
|
| - | 125 | { |
|
| - | 126 | Log("\033[31mOnlinePhonebook: please add sensorDefaultPhoneAreaCode = yourAreaCode to autostart.js, defaulting to 031\033[0m\n"); |
|
| - | 127 | number = "031" + number; |
|
| - | 128 | } |
|
| - | 129 | else |
|
| - | 130 | { |
|
| - | 131 | number = sensorDefaultPhoneAreaCode + number; |
|
| - | 132 | } |
|
| - | 133 | } |
|
| 121 | 134 | ||
| 122 | /* Store number and direction in last values */ |
135 | /* Store number and direction in last values */ |
| 123 | var lastValue = {}; |
136 | var lastValue = {}; |
| 124 | var lastValueString = Storage_GetParameter("LastValues", alias_name); |
137 | var lastValueString = Storage_GetParameter("LastValues", alias_name); |
| 125 | 138 | ||
| Line 130... | Line 143... | ||
| 130 | 143 | ||
| 131 | var timestamp = get_time(); |
144 | var timestamp = get_time(); |
| 132 | 145 | ||
| 133 | lastValue["Phonenumber"] = { "value" : number, "timestamp" : timestamp }; |
146 | lastValue["Phonenumber"] = { "value" : number, "timestamp" : timestamp }; |
| 134 | lastValue["Direction"] = { "value" : incommingCall ? "in" : "out", "timestamp" : timestamp }; |
147 | lastValue["Direction"] = { "value" : incommingCall ? "in" : "out", "timestamp" : timestamp }; |
| 135 | 148 | ||
| 136 | Storage_SetParameter("LastValues", alias_name, JSON.stringify(lastValue)); |
149 | Storage_SetParameter("LastValues", alias_name, JSON.stringify(lastValue)); |
| 137 | 150 | ||
| 138 | 151 | ||
| 139 | /* Store number in phone call history */ |
152 | /* Store number in phone call history */ |
| 140 | var newValue = { "number" : number, "direction" : incommingCall ? "in" : "out", "module" : alias_name, "names" : [], "timestamp" : timestamp }; |
153 | var newValue = { "number" : number, "direction" : incommingCall ? "in" : "out", "module" : alias_name, "names" : [], "timestamp" : timestamp }; |
| 141 | 154 | ||
| 142 | Storage_SetParameter("PhoneCalls", timestamp, JSON.stringify(newValue)); |
155 | Storage_SetParameter("PhoneCalls", timestamp, JSON.stringify(newValue)); |
| 143 | 156 | ||
| 144 | 157 | ||
| 145 | /* Log the number */ |
158 | /* Log the number */ |
| 146 | Log("New number: " + number + ", direction: " + (incommingCall ? "in" : "out")); |
159 | Log("New number: " + number + ", direction: " + (incommingCall ? "in" : "out")); |
| 147 | 160 | ||
| 148 | - | ||
| 149 | var phonebookNumbers; |
- | |
| 150 | /* Lookup name */ |
161 | /* Lookup name */ |
| 151 | if (checkName) |
162 | if (checkName) |
| 152 | { |
163 | { |
| 153 |
|
164 | Sensor_StoreNumberInPhonebook(number, timestamp); |
| 154 | } |
165 | } |
| 155 | 166 | ||
| - | 167 | var phonebookNumbers = Storage_GetJsonParamter("PhoneBook", number); |
|
| 156 | if (!phonebookNumbers) |
168 | if (!phonebookNumbers) |
| 157 | { |
169 | { |
| 158 | phonebookNumbers = []; |
170 | phonebookNumbers = []; |
| 159 | } |
171 | } |
| 160 | 172 | ||
| Line 172... | Line 184... | ||
| 172 | } |
184 | } |
| 173 | case "Voltage": |
185 | case "Voltage": |
| 174 | case "Temperature_Celsius": |
186 | case "Temperature_Celsius": |
| 175 | { |
187 | { |
| 176 | if ((module_name == "DS18x20") && (variables["Value"] == 85)) |
188 | if ((module_name == "DS18x20") && (variables["Value"] == 85)) |
| 177 | { |
189 | { |
| 178 | Log("\033[31mDS18x20: Temperature conversion error: " + module_name + ":" + module_id + ", SensorId=" + variables["SensorId"] + "\033[0m"); |
190 | Log("\033[31mDS18x20: Temperature conversion error: " + module_name + ":" + module_id + ", SensorId=" + variables["SensorId"] + "\033[0m"); |
| 179 | break; |
191 | break; |
| 180 | } |
192 | } |
| 181 | } |
193 | } |
| 182 | case "Humidity_Percent": |
194 | case "Humidity_Percent": |
| 183 | { |
195 | { |
| 184 | for (var alias_name in aliases_data) |
196 | for (var alias_name in aliases_data) |
| 185 | { |
197 | { |
| 186 | if (aliases_data[alias_name]["specific"]["SensorId"] != variables["SensorId"]) |
198 | if (aliases_data[alias_name]["specific"]["SensorId"] != variables["SensorId"]) |
| 187 | { |
199 | { |
| 188 | continue; |
200 | continue; |
| 189 | } |
201 | } |
| 190 | 202 | ||
| 191 | var last_value = {}; |
203 | var last_value = {}; |
| 192 | var last_value_string = Storage_GetParameter("LastValues", alias_name); |
204 | var last_value_string = Storage_GetParameter("LastValues", alias_name); |
| 193 | 205 | ||
| 194 | if (last_value_string) |
206 | if (last_value_string) |
| 195 | { |
207 | { |
| 196 | last_value = eval("(" + last_value_string + ")"); |
208 | last_value = eval("(" + last_value_string + ")"); |
| 197 | } |
209 | } |
| 198 | 210 | ||
| 199 | last_value[command] = { "value" : variables["Value"], "timestamp" : get_time() }; |
211 | last_value[command] = { "value" : variables["Value"], "timestamp" : get_time() }; |
| 200 | 212 | ||
| 201 | Storage_SetParameter("LastValues", alias_name, JSON.stringify(last_value)); |
213 | Storage_SetParameter("LastValues", alias_name, JSON.stringify(last_value)); |
| 202 | } |
214 | } |
| 203 | 215 | ||
| 204 | break; |
216 | break; |
| 205 | } |
217 | } |
| 206 | } |
218 | } |
| 207 | } |
219 | } |
| 208 | } |
220 | } |
| 209 | Module_RegisterToOnMessage("all", Sensor_OnMessage); |
221 | Module_RegisterToOnMessage("all", Sensor_OnMessage); |
| 210 | 222 | ||
| 211 | function Sensor_StoreNumberInPhonebook(number, timestamp) |
223 | function Sensor_StoreNumberInPhonebook(number, timestamp) |
| 212 | { |
224 | { |
| 213 | var phonebookNumbers = Storage_GetJsonParamter("PhoneBook", number); |
225 | var phonebookNumbers = Storage_GetJsonParamter("PhoneBook", number); |
| 214 | 226 | ||
| 215 | if (!phonebookNumbers) |
227 | if (!phonebookNumbers) |
| 216 | { |
228 | { |
| 217 | if (number.charAt(0) != '0') |
- | |
| 218 | { |
- | |
| 219 | if (typeof sensorDefaultPhoneAreaCode === 'undefined') |
- | |
| 220 | { |
- | |
| 221 | Log("\033[31mOnlinePhonebook: please add sensorDefaultPhoneAreaCode = yourAreaCode to autostart.js, defaulting to 031\033[0m\n"); |
- | |
| 222 | number = "031" + number; |
- | |
| 223 | } |
- | |
| 224 | else |
- | |
| 225 | { |
- | |
| 226 | number = sensorDefaultPhoneAreaCode + number; |
- | |
| 227 | } |
- | |
| 228 | } |
- | |
| 229 | - | ||
| 230 | phonebookNumbers = []; |
229 | phonebookNumbers = []; |
| 231 | 230 | ||
| 232 | url = "wap.eniro.se/query?search_word=" + number + "&what=mobwp"; |
231 | url = "wap.eniro.se/query?search_word=" + number + "&what=mobwp"; |
| 233 | //Log("\033[31mURL: http://"+url+"\033[0m\n"); |
232 | //Log("\033[31mURL: http://"+url+"\033[0m\n"); |
| 234 | 233 | ||