سلام میشه از وب سرویس در برنامه های تحت ویندوز استفاده کرد از جایی که پنل گرفتم فقط سی شارپ تحت ویندوز نمونه کد ارائه کردن؟این امکان ویجود داره که در vb.net هم استفاده کرد؟
سلام میشه از وب سرویس در برنامه های تحت ویندوز استفاده کرد از جایی که پنل گرفتم فقط سی شارپ تحت ویندوز نمونه کد ارائه کردن؟این امکان ویجود داره که در vb.net هم استفاده کرد؟
سلام
بله مشکلی نداره
در واقع از نظر امکانات هیچ فرقی بین سی شارپ و VB.Net نیست
کد هاشون هم از نظر شباهت خیلی نزدیک هستن و تبدیلش راحت
اگر در اختیارتون قرار بدم میتونید در اختیارمون قرار بدین یک پروژه که کار کنه!چون برای یک برنامه تحت ویندوز نیاز داریم!
اگه منظورتون اینه که کد سی شارپ دارین مشکلی نداره کدش رو بدید تبدیل می کنیم
اگر هم کد ندارید و دستور عمل استفاده (آدرس و نحوه استفاده از توابع) رو دارید اونا رو بدید
پ خصوصی کردم براتون اطلاعات رو!
سلام مجدد
استفاده از وب سرویس پیامک:
- یک پروژه جدید از نوع ویندوزی بسازید (یا پروژه خودتون رو باز کنید)
- از Solution Explorer رو پروژه راست کلیک و وارد Properties بشید
- برگه رفرنس رو باز کنید
- رو فلش رو به پایین دکمه Add کلیک Service Refrence رو انتخاب کنید
- در پنجره باز شده روی Advance و سپس Add Web Refrence کلیک کنید
- در پنجره باز شده داخل کادر URL آدرسی رو که سرویس دهنده داده وارد کنید ( در مورد این مثال http://payamak-panel.com/post/send.asmx ) توجه کنید که آدرس کامل باشه یعنی //:http رو هم وارد کنید
- دکمه Add Refrence رو زده و پنجره های باز شده رو ببندید
توجه کنید که می شد از همون اولین پنجره رفرس رو اضافه کرد اما به دولیل این کار رو نکردم 1- احتمال قدیمی بودن وب سرویس مقابل 2- هماهنگی با مثالی که تو فایل راهنمای وجود داره
ارسال SMS :
جهت ارسال اسمس کد شما به این صورت خواهد بود (توجه کنید که من فقط یکی از توابع و در واقع روش های ارسال رو درمورد این وب سرویس استفاده کردم)
Dim sms As New MyWebService.Send() 'ایجاد یک نمونه از کلاس سرویس یا همان اصلطلاحا پروکسی
Dim rec() As Long = Nothing 'شماره ای اختصاصی برای هر گیرنده که به وسیله آن وضعیت دریافت پیامک برای آن استعلام می شود
Dim status() As Byte = Nothing 'وضعیت ارسال برای هر گیرنده
Dim ToNus = "09110000000,09120000000,09130000000,093500000 00" 'لیست شماره گیرندگان
Dim retval As Integer = sms.SendSms("نام کاربری", "کلمه عبور", ToNus.Split(","c), "شماره اختصاصی شما", "متن پیام", False, "", rec, status)
MsgBox(retval.ToString()) 'گزارش وضعیت
If retval = 1 Then 'اگر ارسال موفقیت آمیز بود - رجوع شود به راهنمای سرویس دهنده
For i = 0 To status.Length - 1 'بررسی تک تک گیرندگان بر اساس کدی که از سرور برگردانده شده
MsgBox(status(i) & " | " & rec(i))
Next
End If
توجه کنید که نام کاربری ، کلمه عبور و شماره اختصاصی رو باید داخل کد جایگزین کنید ، جهت آزمایش می تونید به جای کلمه نام کاربری و کلیمه عبور demo و بجای شماره از 10002012 بذارید (طبق فایل راهنما )
Dim retval As Integer = sms.SendSms("demo", "demo", ToNus.Split(","c), "10002012", "متن پیام", False, "", rec, status)
لینک فایل راهنمایی که دوستمون دادن:
http://sms.webstudio.ir/Files/WebService.pdf
نمونه کد خودشون (به سی شارپ):
http://sms.webstudio.ir/files/WinApp.zip
و یه سایت دیگه از همین نوع پنل و وب سرویس استفاده می کنه
Relax.ir
Dim retval As Integer = sms.SendSms("نام کاربری", "کلمه عبور", ToNus.Split(","c), "شماره اختصاصی شما", "متن پیام", False, "", rec, status)
سلام کار کرد فقط یه مشکلی داره ارسال انجام میشه و بعد از زمانی که از خط زیر ارور The operation has timed out داد بعد پیام ها ارسال میشه!انگاری منتظر چیزی هست!
واسه من این حالت پیش نمیاد
البته به نظر من اگه نمی خواید از دو تا پارامتر آخر استفاده کنید بهتر از تابع SendSimpleSms یا SendSimpleSms2 استفاده کنید
میشه پیادش کنید تو کد!
الان پیغام ارسال به من نمیده!میگم شاید منظر اینه که کد ارسال بشه سمت وب سرویس و برگرده پیغام بده و این کار انجام نمیشه! واسه همین ارسال رو با تاخیر انجام میده
تو چندتا وب سرویس دیگه هم تست کردم ولی بازم بعد از The operation has timed out پیام ارسال میشه کلی هم باید منتظر موند!
دوستان دلیلش چیه ؟کجای کارم اشتباست ؟
یکی راهنمایی نمیکنه!این پشتیبان وب سرویس انگاری تا الان کد ندیده!
یعنی تا الان کسی این مشکلو نداشته ؟
واقعا دستت درد نکنه کار من راه افتاد
با درود
من مشکل دارم, در واقع کد های بالا و نمونه های دیگر رو امتحان کردم اما پیامک ارسال نمی شه.لطفا راهنمایی کنید.کد HTML:sms.SendSms("demo", "demo", txtRec.Text.Split(new char[] { ',' }), txtNum.Text, txtMsg.Text, false, "", ref rec, ref status);
با این کد مشکلم حل شد.
SmsProje.Send sms = new SmsProje.Send();
و بعد:
sms.SendSms("User", "pass", "30002223", number.Text.Split(new char[] { ',' }), message.Text, false, ref Status, ref RecId);