پست‌ها

نمایش پست‌هایی با برچسب user

بلیت خریداری شده کاربر در رویداد

برای ورود و استفاده از سرویس کانکت، نیاز به تهیه بلیت ای از رویداد مد نظر هست. از این رو، کلاینت ها جهت بهبود و تسریع فرایند ورود نیاز به دانستن این دارن که بدونن آیا کاربر مربوطه بلیت ای از رویداد مد نظر تهیه کرده است یا خیر! در اصل بلیت های خریداری شده از ریسورس هایی در دسترس است ولی نیاز به جست و جو و فرایند هایی بسیار دشوار و طاقت فرسایی برای کلاینت ها پیش رو دارد که هر انسانی رو به گریه و زاری وا می دارد. هدف از این تسک تسهیل این امر می باشد. هدفی که در نهایت باعث شادی و خرسندی بچه های کلاینت می شود. بچه های دوست داشتنی، بچه های قوقول مقولی و نی ناش ناش. راه حل ارائه شده بدین شکل است که در صورتی که کاربر (نه مهمان) باعث بارگزاری دیتاهای مربوط به رویدادی شود (GET /events/SLUG) در بتن اطلاعات رویداد، لینکی به بلیت خریداری شده کاربر خواهد بود. این لینک در صورتی که کاربری بلیت ای از رویداد مد نظر تهیه نکرده باشد، مقداری نخواهد داشت و برابر null خواهد بود. GET https://api.evand.com/events/SLUG و خروجی بدین شکل خواهد بود: {   "data": {     "

تایید شماره موبایل پروفایل کاربر ایوند

سلام و صدها سلامی دیگر تاریخچه در حال حاضر که این متن آماده می شه روش تایید شماره موبایل پروفایل کاربر در ایوند به شیوه ای انجام می شه که یه توضیح ای در موردش می دیم و اینکه در آینده ای نزدیک قرار به حذف شدنش خواهد بود و تنها راه برای تایید به شیوه جدید که به زودی به بررسیش خواهیم رسید. شیوه قدیمی برای تایید شماره موبایل پروفایل بدین شکل است که درخواستی به ریسورس  POST https://api.evand.com/users/USER_ID/verifyMobile ارسال می شه که باعث ارسال کدی ۵ یا ۶ به شماره موبایل ای که همراه درخواست فوق ارسال می شه، می شده است. سپس برای تایید شماره موبایل مربوطه درخواست دیگری به ریسورس  GET https://api.evand.com/auth/confirmMobile/5_OR_6_DIGIT_VERIFICTION_CODE جهت تایید شماره موبایل ذخیره شده در پروفایل کاربری ارسال می شد. یه سری نکاتی در رابطه با این شیوه قدیم وجود داره که بهتره یه اشاره ای بهشون بشه: نکته اول اینه که برای درخواست اولی نیاز به آی دی کاربر بود، با اینکه هدر مربوطه جهت اهراز هویت ارسال می شد. این مسئله در ریسورس جدید حل شده و نیازی به ارسال آی دی کارب

بارگذاری دیتای رویدادهای ویژه کاربران

سلام سرویس اصلی ایوند نیاز به ورودیه ای داره که بتونه رویدادهای ویژه کاربران رو از سرویس مربوطه ای دریافت بکنه. این اطلاعات همانطوری که تحویل گرفته می شه، برای استفاده های بعدی در جدول user_special_event ذخیره می شوند. برای تحویل رویدادها بدین شکل عمل می کنیم: POST http://api.evand.com/ data-providers/user-special-events Headers: Authorization: Bearer TOKEN [ { "user_id": 1, "events": [ [1, 1], [2, 0.9], [100, 0.8] ] }, { "user_id": 2, "events": [ [1, 1], [2, 0.9], [100, 0.8] ] } ] چند نکته، یک اینکه برای اینکه بتونید درخواستی ثبت کنید نیاز به اهراز هویت است و نیاز است توکن jwt تان رو از هدر ارسال نمایید. کاربر تان نیازه که دسترسی ادمین داشته باشه. دیتاهای ارسالی نیاز است بصورت آرایه ارسال شود. می تونید رویدادهایی که مربوط به یه کاربر است رو در یه درخواست جدا ارسال کنید و یا اطلاعات چندین کاربر رو همزمان ارسال کنید. هر کدام که راحت هستید قابل انجام است. اطلاعات رویدادهایی که برای یه کاربر می فرستید، ب

پروفایل عمومی کاربران کانکت

سلام نوع دیگری از پروفایل کاربری، علاوه بر پروفایل خودمان، پروفایل عمومی دیگر کاربران است. تفاوت اصلی پروفایل عمومی دیگر کاربران در این است که اطلاعات حساسی مثل ایمیل و موبایل در دسترس دیگری کاربران قرار نمی گیرد. مورد بعدی در پروفایل عمومی کاربران این است که آی دی کاربر مربوطه را نیز باید بدانید D: اگر هم ندارید، اشکالی ندارد، تشرف آورده تا از دیتابیس گله ای از آی دی های رنگ و بارنگ تقدیم حضورتان شود. نکته بعدی اینه که باید اهراز هویت کرده باشید تا اطلاعات پروفایل دیگر کاربران در دسترستان قرار بگیرد. برای دریافت پروفایل کاربری به این نحو عمل می کنیم: GET     https://connect.evand.com/api/users/ {user_id} {   "name": "hossein",   "surname": "baghaiy",   "avatar": null,   "biography": "web developer",   "jobTitle": null,   "organization": "somewhere",   "website": null,   "telegram": null,   "linkedin": null,

فرایند پروفایل عمومی دیگر کاربران

سلام هدف از نوشتن فرایندها تنها دلیل این متن اینه که تو یه صفحه از مسئله قرار بگیریم و بدونیم چه کاری انجام می شه، توسط کسی که انجام می شه، و اگه راه غیر معقول در پیش گرفته شده، تصحیح و راه درستی در پیش گرفته بشه و دلیل خاص دیگه ای نداره. هر چند نکات کمتری این متون داشته باشه، با این حال ممکنه مسائلی رو از یاد برده باشم که انتشارش شاید از اتلاف وقت جلوگیری کنه. جزئیات فرایند این تسک چیزی خاصی نداره. صرفا ریسورس ای در اختیار خواهیم داشت که بشه پروفایل دیگر کاربران را مشاهده کرد. این ریسورس با ریسورس ای که می شه پروفایل خودمان را مشاهده کنیم فرق خواهد داشت. فرق این مسئله تنها در دسترس نبودن برخی اطلاعات است. اطلاعاتی که در پروفایل کاربران در دسترس نخواهد بود، ایمیل و موبایل می باشد. دیگر اطلاعات بنظر حساس نبوده و نیازی به مخفی سازی نبوده برای همین در اختیار خواهد بود. مثل توضیحاتی از کاربر مربوطه، آواتار، مشخصات شبکه های اجتماعی و از این قبیل اطلاعات. اطلاعات دیگر کاربران، تنها توسط دیگری کاربران لاگین شده در سیستم کانکت قابل رویت خواهد بود و برای مهمان در

نشان کردن کاربران در سیستم کانکت

سلام منظور از نشان کردن همان bookmark کردن می باشد. نشان کردن کاربران یه ریسورس داریم تا نداره.  برای نشان کردن دیگر کاربران به این نحو عمل می کنیم: PUT https://connect.evand.com/api/bookmarks/users/ {target_user_id} درخواست PUT ای به ریسورس مربوطه ارسال می شود. توجه کنید که از آنجایی که کاربر مورد نظر می دانید چه کسی می باشد و آی دی طرف را هم نیازه داشته باشید و سپس آی دی را در URI فوق بجای {target_user_id} قرار می دهید و در نهایت درخواست خود را ارسال می کنید. عمل فوق چند نتیجه می تونه به همراه داشته باشه: در صورت نشان شدن کاربر مورد نظر: status کد ۲۰۱ خواهیم داشت در صورت ای که کاربری از قبل نشان شده باشه، status کد ۲۰۴ خواهیم داشت. در صورتی که کاربری را که نباید نشان کنید، مثل خودتان، سرور خواهد ترکید و کد ۵۰۰ خواهیم داشت. در اصل این عمل نباید صورت بگیرد ولی با این حال اگر اتفاق بیفتد، سرور پاسخ مناسبی از خود نشان نمی دهند و خشونت به خرج خواهد داد. در صورت نشان کردن کاربری که وجود ندارد، با status کد ۴۰۴ در خدمتتان خواهیم بود. حذف کاربر نشان شده

User Sessions Termination

متاسفانه از مشکلاتی که داریم، اینه که افراد دیگری به اکانتمون دسترسی دارن و تا خودشون خروج نکنن کاری از دست ما ساخته نخواهد بود و این خوب نیست! راه حل پیشنهادی برای این مسئله، این بود که توکن های دیگر ایجاد شده برای کاربر مربوطه رو بشه از بین برد. برای این منظور آمدیم توکن های کاربران رو نگهداری کنیم، و توکن هایی هم که از قبل ساخته شدن و نداریمشون هنگام درخواستی ازشون، ثبت و ضبط می شه. که کاربر ای که می خواد دیگر سشن هاشو پاک کنه، بتونه با فشار دادن دکمه خوشگل موشگلی، به این عمل خشونت بار خیش، دست پیدا کنه. نکته ای که وجود داره اینه که کاربری که این عمل رو می خواد انجام بده، توکن ای که الان در دست داره و می چرخه باهاش، از بین نخواد رفته و دیگری توکن های شناسایی شده کاربر از بین خواهد رفت. برای حذف سشن های کاربری به این شیوه عمل می کنیم: DELETE https://api.evand.com/users/me/sessions Headers: Authorization: Bearer xxx… همین. توجه کنید که کارها بعد از ثبت درخواست در پشت صحنه انجام نمی شه و همان لحظه انجام می شه و ممکنه در صورتی که سشن های زیادی برای کاربر

پروفایل کاربر کانکت

سلام و خسته نباشید کاربر وارد شده در اپ کانکت، یا کاربر کانکت از طریق اپ دیسکاوری، پروفایلی در اختیار داره که مجزار از سیستم اصلی ایوند می باشد. یعنی در سیستم کانکت هم کاربر داریم که هیچ ارتباطی با کاربر تو خود سیستم اصلی ایوند نداره. این کاربر ایوند، صفحه پروفایل مربوط به خود رو می تونه داشته باشه. می تونه اطلاعات مرتبط به خودش رو ببینه. آپدیت کنه. خودشو بکشه و دنیاشو نابود کنه. در صورتی که کاربر لاگین کرده باشه و توکن مربوط به کاربر خاصی باشه، و نه کلایت (مثل خود اپ کانکت) می شه از ریسورس مربوطه برای موارد مطرح شده استفاده کرد و لذتش را تا جان در بدن هست، برد. دریافت اطلاعات پروفایل کاربر برای دریافت اطلاعات پروفایل کاربر فعالی به این شکل عمل می کنیم: GET https://connect.evand.com/api/users/me Header: Authorization: Bearer xxx {   "email": "hossein.bala-shahdana@gmail.com",   "mobile": "+989100000000",   "name": "hosse",   "surname": "baghayi",   "biogra

رویدادهای موضوعات مورد علاقه کاربر

?سلام در صفحه اول ایوند نیازه بوده که رویدادهای مربوط به موضوعاتی که کاربر علاقمند هست نمایش داده شود. از آنجایی هم که ریسورس ای برای این منظور در دست نبود، فرانت برای این منظور از ریسورس های مختلفی برای این کار استفاده می کرد که لیست موضوعات رو پیدا کنه، و برای هر موضوع درخواستی به لیست رویدادهای بزنه و رویدادهای موضوعات رو در بیاره که البته درش خطایی هم هست. درخواست هایی می خوره که نتایجی به همراه نخواهد بود. و البته ترتیب دیتاها هم به راحتی توسط فرانت قابل انجام نبود. این ریسورس برای اینکه که لیستی از موضوعات ای که کاربر بهش علاقمند هست به همراه ۴ تن از رویداد مربوط به موضوع مورد نظر رو در دسترس کلاینت قراره بده. ترتیب موضوعات هم بر اساس بیشترین فروشش چیده شده. برای دریافت لیست موضوعات و رویدادهای بدین شکل عمل می کنیم: GET https://api.evand.com/followed-categories/events {   "data": [     {       "category_id": 1,       "category_title": "کارآفرینی",       "category_slug": "کارآفرینی",