Updated SendSMS
This commit is contained in:
Родитель
1846e8eaa8
Коммит
33349ae31a
|
@ -7,6 +7,22 @@
|
||||||
$(".header_main__button_back").off("click");
|
$(".header_main__button_back").off("click");
|
||||||
|
|
||||||
$(".button_send_sms").on("click", function () {
|
$(".button_send_sms").on("click", function () {
|
||||||
$.post("https://trackiotathletes.azurewebsites.net/api/v1/devices/sendSMS", {});
|
|
||||||
|
var data = {
|
||||||
|
deviceId: $(".js-new_device_id .text_copy_container__input--add_device_copy_table").val().trim(),
|
||||||
|
domain: $(".js-new_device_provider .text_copy_container__input--add_device_copy_table").val().trim(),
|
||||||
|
deviceKey: $(".js-new_device_key .text_copy_container__input--add_device_copy_table").val().trim(),
|
||||||
|
phoneNumber: $(".js-send_sms_phone_number").val().trim()
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log(data);
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
"dataType": "json",
|
||||||
|
"type": "POST",
|
||||||
|
"url": "/api/v1/devices/sendSMS",
|
||||||
|
"cache": false,
|
||||||
|
"data": data
|
||||||
|
})
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -20,7 +20,7 @@ else
|
||||||
<td class="table_credentials__label">
|
<td class="table_credentials__label">
|
||||||
@Strings.DeviceIdColon
|
@Strings.DeviceIdColon
|
||||||
</td>
|
</td>
|
||||||
<td class="table_credentials__value">
|
<td class="table_credentials__value js-new_device_id">
|
||||||
@IoTHelpers.TextCopy("DeviceId", classname, @Model.DeviceId)
|
@IoTHelpers.TextCopy("DeviceId", classname, @Model.DeviceId)
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -28,7 +28,7 @@ else
|
||||||
<td class="table_credentials__label">
|
<td class="table_credentials__label">
|
||||||
@Strings.AzureDevicesHostnameColon
|
@Strings.AzureDevicesHostnameColon
|
||||||
</td>
|
</td>
|
||||||
<td class="table_credentials__value">
|
<td class="table_credentials__value js-new_device_provider">
|
||||||
@IoTHelpers.TextCopy("AzureDevicesHostname", classname, @Model.HostName)
|
@IoTHelpers.TextCopy("AzureDevicesHostname", classname, @Model.HostName)
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -36,7 +36,7 @@ else
|
||||||
<td class="table_credentials__label">
|
<td class="table_credentials__label">
|
||||||
@Strings.DeviceKeyColon
|
@Strings.DeviceKeyColon
|
||||||
</td>
|
</td>
|
||||||
<td class="table_credentials__value">
|
<td class="table_credentials__value js-new_device_key">
|
||||||
@IoTHelpers.TextCopy("PrimaryKey", classname, @Model.PrimaryKey)
|
@IoTHelpers.TextCopy("PrimaryKey", classname, @Model.PrimaryKey)
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -47,7 +47,13 @@ else
|
||||||
|
|
||||||
<button type="button" class="button_base button_credentials" onclick="location.href = '@Url.Action("Index", "Device")' ">@Strings.Done</button>
|
<button type="button" class="button_base button_credentials" onclick="location.href = '@Url.Action("Index", "Device")' ">@Strings.Done</button>
|
||||||
|
|
||||||
<button type="button" class="button_base button_send_sms">@Strings.SendSMS</button>
|
<div>
|
||||||
|
Send Device info SMS To:
|
||||||
|
|
||||||
|
<input class="js-send_sms_phone_number" type="text" />
|
||||||
|
|
||||||
|
<button type="button" class="button_base button_send_sms">@Strings.SendSMS</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
@if (!string.IsNullOrWhiteSpace(Model.InstructionsUrl)) {
|
@if (!string.IsNullOrWhiteSpace(Model.InstructionsUrl)) {
|
||||||
<div class="content_instructions">
|
<div class="content_instructions">
|
||||||
|
|
|
@ -166,6 +166,10 @@
|
||||||
<Reference Include="Owin">
|
<Reference Include="Owin">
|
||||||
<HintPath>..\..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
|
<HintPath>..\..\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="RestSharp, Version=105.2.2.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\..\packages\RestSharp.105.2.2\lib\net451\RestSharp.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
|
@ -236,6 +240,10 @@
|
||||||
<Reference Include="System.Web.Optimization">
|
<Reference Include="System.Web.Optimization">
|
||||||
<HintPath>..\..\packages\Microsoft.AspNet.Web.Optimization.1.1.3\lib\net40\System.Web.Optimization.dll</HintPath>
|
<HintPath>..\..\packages\Microsoft.AspNet.Web.Optimization.1.1.3\lib\net40\System.Web.Optimization.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="Twilio.Api, Version=3.4.1.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\..\packages\Twilio.4.5.0\lib\3.5\Twilio.Api.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
<Reference Include="WebGrease">
|
<Reference Include="WebGrease">
|
||||||
<HintPath>..\..\packages\WebGrease.1.6.0\lib\WebGrease.dll</HintPath>
|
<HintPath>..\..\packages\WebGrease.1.6.0\lib\WebGrease.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
|
|
@ -10,8 +10,13 @@ using Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Infrastr
|
||||||
using Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Infrastructure.Models;
|
using Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Infrastructure.Models;
|
||||||
using Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.DataTables;
|
using Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.DataTables;
|
||||||
using Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security;
|
using Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security;
|
||||||
|
using System.Security.Cryptography;
|
||||||
using Newtonsoft.Json.Linq;
|
using Newtonsoft.Json.Linq;
|
||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
|
using Twilio;
|
||||||
|
using System.Security.Cryptography;
|
||||||
|
using System.Text;
|
||||||
|
using System.IO;
|
||||||
|
|
||||||
namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.WebApiControllers
|
namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.WebApiControllers
|
||||||
{
|
{
|
||||||
|
@ -28,7 +33,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
// POST: api/v1/devices/sample/5
|
// POST: api/v1/devices/sample/5
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Route("sample/{count}")]
|
[Route("sample/{count}")]
|
||||||
[WebApiRequirePermission(Permission.AddDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.AddDevices)]
|
||||||
public async Task<HttpResponseMessage> GenerateSampleDevicesAsync(int count)
|
public async Task<HttpResponseMessage> GenerateSampleDevicesAsync(int count)
|
||||||
{
|
{
|
||||||
ValidatePositiveValue("count", count);
|
ValidatePositiveValue("count", count);
|
||||||
|
@ -43,7 +48,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
// GET: api/v1/devices/5
|
// GET: api/v1/devices/5
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
[Route("{id}")]
|
[Route("{id}")]
|
||||||
[WebApiRequirePermission(Permission.ViewDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.ViewDevices)]
|
||||||
public async Task<HttpResponseMessage> GetDeviceAsync(string id)
|
public async Task<HttpResponseMessage> GetDeviceAsync(string id)
|
||||||
{
|
{
|
||||||
ValidateArgumentNotNullOrWhitespace("id", id);
|
ValidateArgumentNotNullOrWhitespace("id", id);
|
||||||
|
@ -63,7 +68,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
// Example: api/v1/devices?filterColumn=DeviceID&filterType=StartsWithCaseSensitive&filterValue=000&filterColumn=FirmwareVersion&filterType=ContainsCaseInsensitive&filterValue=564
|
// Example: api/v1/devices?filterColumn=DeviceID&filterType=StartsWithCaseSensitive&filterValue=000&filterColumn=FirmwareVersion&filterType=ContainsCaseInsensitive&filterValue=564
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
[Route("")]
|
[Route("")]
|
||||||
[WebApiRequirePermission(Permission.ViewDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.ViewDevices)]
|
||||||
public async Task<HttpResponseMessage> GetDevicesAsync(
|
public async Task<HttpResponseMessage> GetDevicesAsync(
|
||||||
[FromUri]string search = null,
|
[FromUri]string search = null,
|
||||||
[FromUri]string sortColumn = null,
|
[FromUri]string sortColumn = null,
|
||||||
|
@ -109,7 +114,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
// This endpoint is used by the jQuery DataTables grid to get data (and accepts an unusual data format based on that grid)
|
// This endpoint is used by the jQuery DataTables grid to get data (and accepts an unusual data format based on that grid)
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Route("list")]
|
[Route("list")]
|
||||||
[WebApiRequirePermission(Permission.ViewDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.ViewDevices)]
|
||||||
public async Task<HttpResponseMessage> GetDevices([FromBody]JObject requestData)
|
public async Task<HttpResponseMessage> GetDevices([FromBody]JObject requestData)
|
||||||
{
|
{
|
||||||
return await GetServiceResponseAsync<DataTablesResponse>(async () =>
|
return await GetServiceResponseAsync<DataTablesResponse>(async () =>
|
||||||
|
@ -148,25 +153,30 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
// POST: api/v1/devices/sendSMS
|
// POST: api/v1/devices/sendSMS
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Route("sendSMS")]
|
[Route("sendSMS")]
|
||||||
[WebApiRequirePermission(Permission.ViewDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.ViewDevices)]
|
||||||
public async Task<HttpResponseMessage> SendSMS([FromBody]JObject requestData)
|
public HttpResponseMessage SendSMS([FromBody]JObject requestData)
|
||||||
{
|
{
|
||||||
List<KeyValuePair<string, string>> parameters = new List<KeyValuePair<string, string>>;
|
|
||||||
parameters.Add(new KeyValuePair<string, string>("To", "+17038638414"));
|
|
||||||
parameters.Add(new KeyValuePair<string, string>("From", "+12064881483"));
|
|
||||||
parameters.Add(new KeyValuePair<string, string>("Body", "This is a test from the application"));
|
|
||||||
|
|
||||||
HttpContent content = new FormUrlEncodedContent(parameters);
|
// Download the twilio-csharp library from twilio.com/docs/csharp/install
|
||||||
content.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded");
|
|
||||||
|
|
||||||
return await new HttpClient().PostAsync("https://AC2314c6031b641c3b877d84ee0d58a021:ffd9483b5d66b68d9dbac234fe771952@api.twilio.com/2010-04-01/Accounts/AC2314c6031b641c3b877d84ee0d58a021/Messages", content);
|
// Find your Account Sid and Auth Token at twilio.com/user/account
|
||||||
}
|
string AccountSid = "AC2314c6031b641c3b877d84ee0d58a021";
|
||||||
|
string AuthToken = "ffd9483b5d66b68d9dbac234fe771952";
|
||||||
|
var twilio = new TwilioRestClient(AccountSid, AuthToken);
|
||||||
|
|
||||||
|
string messageBody = requestData["domain"].ToString() + ';' + requestData["deviceId"].ToString() + ';' + requestData["deviceKey"].ToString();
|
||||||
|
|
||||||
|
var message = twilio.SendMessage("+12064881483", requestData["phoneNumber"].ToString(), messageBody);
|
||||||
|
Console.WriteLine(message.Sid);
|
||||||
|
|
||||||
|
return new HttpResponseMessage(System.Net.HttpStatusCode.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// DELETE: api/v1/devices/5
|
// DELETE: api/v1/devices/5
|
||||||
[HttpDelete]
|
[HttpDelete]
|
||||||
[Route("{id}")]
|
[Route("{id}")]
|
||||||
[WebApiRequirePermission(Permission.RemoveDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.RemoveDevices)]
|
||||||
public async Task<HttpResponseMessage> RemoveDeviceAsync(string id)
|
public async Task<HttpResponseMessage> RemoveDeviceAsync(string id)
|
||||||
{
|
{
|
||||||
ValidateArgumentNotNullOrWhitespace("id", id);
|
ValidateArgumentNotNullOrWhitespace("id", id);
|
||||||
|
@ -181,7 +191,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
// POST: api/v1/devices
|
// POST: api/v1/devices
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Route("")]
|
[Route("")]
|
||||||
[WebApiRequirePermission(Permission.AddDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.AddDevices)]
|
||||||
public async Task<HttpResponseMessage> AddDeviceAsync(dynamic device)
|
public async Task<HttpResponseMessage> AddDeviceAsync(dynamic device)
|
||||||
{
|
{
|
||||||
ValidateArgumentNotNull("device", device);
|
ValidateArgumentNotNull("device", device);
|
||||||
|
@ -195,7 +205,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
//PUT: api/v1/devices
|
//PUT: api/v1/devices
|
||||||
[HttpPut]
|
[HttpPut]
|
||||||
[Route("")]
|
[Route("")]
|
||||||
[WebApiRequirePermission(Permission.EditDeviceMetadata)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.EditDeviceMetadata)]
|
||||||
public async Task<HttpResponseMessage> UpdateDeviceAsync(dynamic device)
|
public async Task<HttpResponseMessage> UpdateDeviceAsync(dynamic device)
|
||||||
{
|
{
|
||||||
ValidateArgumentNotNull("device", device);
|
ValidateArgumentNotNull("device", device);
|
||||||
|
@ -210,7 +220,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
//GET: api/v1/devices/5/hub-keys
|
//GET: api/v1/devices/5/hub-keys
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
[Route("{id}/hub-keys")]
|
[Route("{id}/hub-keys")]
|
||||||
[WebApiRequirePermission(Permission.ViewDeviceSecurityKeys)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.ViewDeviceSecurityKeys)]
|
||||||
public async Task<HttpResponseMessage> GetDeviceKeysAsync(string id)
|
public async Task<HttpResponseMessage> GetDeviceKeysAsync(string id)
|
||||||
{
|
{
|
||||||
ValidateArgumentNotNullOrWhitespace("id", id);
|
ValidateArgumentNotNullOrWhitespace("id", id);
|
||||||
|
@ -224,7 +234,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
//PUT: api/v1/devices/5/enabledstatus
|
//PUT: api/v1/devices/5/enabledstatus
|
||||||
[HttpPut]
|
[HttpPut]
|
||||||
[Route("{deviceId}/enabledstatus")]
|
[Route("{deviceId}/enabledstatus")]
|
||||||
[WebApiRequirePermission(Permission.DisableEnableDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.DisableEnableDevices)]
|
||||||
public async Task<HttpResponseMessage> UpdateDeviceEnabledStatus(string deviceId, [FromBody]JObject request)
|
public async Task<HttpResponseMessage> UpdateDeviceEnabledStatus(string deviceId, [FromBody]JObject request)
|
||||||
{
|
{
|
||||||
bool isEnabled;
|
bool isEnabled;
|
||||||
|
@ -260,7 +270,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
// POST: api/v1/devices/5/commands/{commandName}
|
// POST: api/v1/devices/5/commands/{commandName}
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Route("{deviceId}/commands/{commandName}")]
|
[Route("{deviceId}/commands/{commandName}")]
|
||||||
[WebApiRequirePermission(Permission.SendCommandToDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.SendCommandToDevices)]
|
||||||
public async Task<HttpResponseMessage> SendCommand(string deviceId, string commandName, [FromBody]dynamic parameters)
|
public async Task<HttpResponseMessage> SendCommand(string deviceId, string commandName, [FromBody]dynamic parameters)
|
||||||
{
|
{
|
||||||
ValidateArgumentNotNullOrWhitespace("deviceId", deviceId);
|
ValidateArgumentNotNullOrWhitespace("deviceId", deviceId);
|
||||||
|
@ -279,7 +289,7 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
// DELETE: api/v1/all-devices
|
// DELETE: api/v1/all-devices
|
||||||
[HttpDelete]
|
[HttpDelete]
|
||||||
[Route("~/api/v1/all-devices")]
|
[Route("~/api/v1/all-devices")]
|
||||||
[WebApiRequirePermission(Permission.RemoveDevices)]
|
[WebApiRequirePermission(Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.Security.Permission.RemoveDevices)]
|
||||||
public async Task<HttpResponseMessage> DeleteAllDevices()
|
public async Task<HttpResponseMessage> DeleteAllDevices()
|
||||||
{
|
{
|
||||||
return await GetServiceResponseAsync(async () =>
|
return await GetServiceResponseAsync(async () =>
|
||||||
|
@ -312,4 +322,5 @@ namespace Microsoft.Azure.Devices.Applications.RemoteMonitoring.DeviceAdmin.Web.
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
<package id="Autofac.WebApi2.Owin" version="3.3.0" targetFramework="net451" />
|
<package id="Autofac.WebApi2.Owin" version="3.3.0" targetFramework="net451" />
|
||||||
<package id="dotless" version="1.5.1" targetFramework="net451" />
|
<package id="dotless" version="1.5.1" targetFramework="net451" />
|
||||||
<package id="Dynamitey" version="1.0.2.0" targetFramework="net451" />
|
<package id="Dynamitey" version="1.0.2.0" targetFramework="net451" />
|
||||||
<package id="Microsoft.RemoteMonitoring.Infrastructure.Connectivity" version="1.0.0" targetFramework="net451" />
|
|
||||||
<package id="jQuery" version="1.11.2" targetFramework="net451" />
|
<package id="jQuery" version="1.11.2" targetFramework="net451" />
|
||||||
<package id="jQuery.UI.Combined" version="1.11.4" targetFramework="net451" />
|
<package id="jQuery.UI.Combined" version="1.11.4" targetFramework="net451" />
|
||||||
<package id="jQuery.UI.i18n" version="1.10.2" targetFramework="net451" />
|
<package id="jQuery.UI.i18n" version="1.10.2" targetFramework="net451" />
|
||||||
|
@ -39,14 +38,17 @@
|
||||||
<package id="Microsoft.Owin.Security.Jwt" version="3.0.1" targetFramework="net45" />
|
<package id="Microsoft.Owin.Security.Jwt" version="3.0.1" targetFramework="net45" />
|
||||||
<package id="Microsoft.Owin.Security.OAuth" version="3.0.1" targetFramework="net45" />
|
<package id="Microsoft.Owin.Security.OAuth" version="3.0.1" targetFramework="net45" />
|
||||||
<package id="Microsoft.Owin.Security.WsFederation" version="3.0.1" targetFramework="net45" />
|
<package id="Microsoft.Owin.Security.WsFederation" version="3.0.1" targetFramework="net45" />
|
||||||
|
<package id="Microsoft.RemoteMonitoring.Infrastructure.Connectivity" version="1.0.0" targetFramework="net451" />
|
||||||
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
|
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
|
||||||
<package id="Microsoft.Web.WebJobs.Publish" version="1.0.7" targetFramework="net451" />
|
<package id="Microsoft.Web.WebJobs.Publish" version="1.0.7" targetFramework="net451" />
|
||||||
<package id="Moment.js" version="2.10.6" targetFramework="net451" />
|
<package id="Moment.js" version="2.10.6" targetFramework="net451" />
|
||||||
<package id="Newtonsoft.Json" version="7.0.1" targetFramework="net451" />
|
<package id="Newtonsoft.Json" version="7.0.1" targetFramework="net451" />
|
||||||
<package id="Owin" version="1.0" targetFramework="net45" />
|
<package id="Owin" version="1.0" targetFramework="net45" />
|
||||||
<package id="Respond" version="1.4.2" targetFramework="net451" />
|
<package id="Respond" version="1.4.2" targetFramework="net451" />
|
||||||
|
<package id="RestSharp" version="105.2.2" targetFramework="net451" />
|
||||||
<package id="System.IdentityModel.Tokens.Jwt" version="4.0.2.206221351" targetFramework="net451" />
|
<package id="System.IdentityModel.Tokens.Jwt" version="4.0.2.206221351" targetFramework="net451" />
|
||||||
<package id="System.Spatial" version="5.6.4" targetFramework="net451" />
|
<package id="System.Spatial" version="5.6.4" targetFramework="net451" />
|
||||||
|
<package id="Twilio" version="4.5.0" targetFramework="net451" />
|
||||||
<package id="Unofficial.Microsoft.WindowsAzure.Diagnostics" version="2.7.0.0" targetFramework="net451" />
|
<package id="Unofficial.Microsoft.WindowsAzure.Diagnostics" version="2.7.0.0" targetFramework="net451" />
|
||||||
<package id="WebGrease" version="1.6.0" targetFramework="net451" />
|
<package id="WebGrease" version="1.6.0" targetFramework="net451" />
|
||||||
<package id="WindowsAzure.Storage" version="5.0.2" targetFramework="net451" />
|
<package id="WindowsAzure.Storage" version="5.0.2" targetFramework="net451" />
|
||||||
|
|
|
@ -102,6 +102,10 @@
|
||||||
<Reference Include="Owin">
|
<Reference Include="Owin">
|
||||||
<HintPath>$(SolutionDir)\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
|
<HintPath>$(SolutionDir)\packages\Owin.1.0\lib\net40\Owin.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="RestSharp, Version=105.2.2.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\..\packages\RestSharp.105.2.2\lib\net451\RestSharp.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Configuration" />
|
<Reference Include="System.Configuration" />
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
|
@ -135,6 +139,10 @@
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
<Reference Include="System.Xml" />
|
<Reference Include="System.Xml" />
|
||||||
|
<Reference Include="Twilio.Api, Version=3.4.1.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\..\packages\Twilio.4.5.0\lib\3.5\Twilio.Api.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="EventProcessorModule.cs" />
|
<Compile Include="EventProcessorModule.cs" />
|
||||||
|
|
|
@ -21,7 +21,9 @@
|
||||||
<package id="Microsoft.WindowsAzure.ConfigurationManager" version="3.1.0" targetFramework="net451" />
|
<package id="Microsoft.WindowsAzure.ConfigurationManager" version="3.1.0" targetFramework="net451" />
|
||||||
<package id="Newtonsoft.Json" version="7.0.1" targetFramework="net451" />
|
<package id="Newtonsoft.Json" version="7.0.1" targetFramework="net451" />
|
||||||
<package id="Owin" version="1.0" targetFramework="net451" />
|
<package id="Owin" version="1.0" targetFramework="net451" />
|
||||||
|
<package id="RestSharp" version="105.2.2" targetFramework="net451" />
|
||||||
<package id="System.Spatial" version="5.6.4" targetFramework="net451" />
|
<package id="System.Spatial" version="5.6.4" targetFramework="net451" />
|
||||||
|
<package id="Twilio" version="4.5.0" targetFramework="net451" />
|
||||||
<package id="Unofficial.Microsoft.WindowsAzure.Diagnostics" version="2.7.0.0" targetFramework="net451" />
|
<package id="Unofficial.Microsoft.WindowsAzure.Diagnostics" version="2.7.0.0" targetFramework="net451" />
|
||||||
<package id="WindowsAzure.ServiceBus" version="3.0.4" targetFramework="net451" />
|
<package id="WindowsAzure.ServiceBus" version="3.0.4" targetFramework="net451" />
|
||||||
<package id="WindowsAzure.Storage" version="5.0.2" targetFramework="net451" />
|
<package id="WindowsAzure.Storage" version="5.0.2" targetFramework="net451" />
|
||||||
|
|
Загрузка…
Ссылка в новой задаче