Рабочий чат на as3

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
Ответить
kirikfas
Сообщения: 46
Зарегистрирован: 17 июн 2011, 08:39

Рабочий чат на as3

Сообщение kirikfas »

1. Кто может выложить чат который будет в кадре (as3) без контейнера.
2. Как вывести имя и фамилию без main.as в кадре без контейнера.


Реально ли то что я прошу или нет, помогите пожалуйста.
Александрович
МУЛЬТИАККАУНТ!
Сообщения: 86
Зарегистрирован: 20 окт 2011, 22:29

Re: Рабочий чат на as3

Сообщение Александрович »

всё реально, спору нет. На этом форуме в уроках покопайся, всё найдёшь! И чат в кадре тут есть, и имя с фомилией=)
Александрович
МУЛЬТИАККАУНТ!
Сообщения: 86
Зарегистрирован: 20 окт 2011, 22:29

Re: Рабочий чат на as3

Сообщение Александрович »

ну если что, на крайняк найди код в классе, я те переделаю в кадр
kirikfas
Сообщения: 46
Зарегистрирован: 17 июн 2011, 08:39

Re: Рабочий чат на as3

Сообщение kirikfas »

Код: Выделить всё

package {    import flash.net.URLLoader;    import flash.net.URLRequest;    import flash.display.*;    import flash.events.*;    import flash.text.*;     public class Main extends Sprite {        private var api_id:Number=743131; // id вашего приложения        private var api_secret:String="sE4VlnFfSQ"; // секретный ключ        private var externalXML:XML;        private var loader:URLLoader = new URLLoader();        private var photoLoader:Loader = new Loader();        private var viewer_id:Number;        private var sig:String;        private var uid:String;        private var bdate_txt:TextField = new TextField();        private var name_txt:TextField = new TextField();         public function Main():void {            // узнаём id пользователя, который просматривает приложение            var params:Object=LoaderInfo(root.loaderInfo).parameters;            viewer_id = (params['viewer_id']) ? parseInt(params['viewer_id']) : 1;            // получаем профиль этого пользователя            getProfile(viewer_id);        }         private function getProfile(uid):void { // функция получения профиля            sig=MD5.encrypt(viewer_id+'api_id='+api_id+'fields=bdate,photo_bigmethod=getProfilesuids='+uid+'v=2.0'+api_secret);            var request:URLRequest=new URLRequest("http://api.vkontakte.ru/api.php?api_id="+api_id+"&method=getProfiles&uids="+uid+"&fields=bdate,photo_big&v=2.0&sig="+sig);            loader.load(request);            loader.addEventListener(Event.COMPLETE, onComplete);        }         private function onComplete(event:Event):void { // функция выполняется когда профиль был загружен            bdate_txt.text='';            if (loader!=null) {                externalXML=new XML(loader.data);                // отображаем дату рождения                var bdate = externalXML..bdate;                bdate_txt.text=bdate;                bdate_txt.x=490;                bdate_txt.y=380;                addChild(bdate_txt);                               // отображаем имя и фамилию                var uname = externalXML..first_name + ' ' + externalXML..last_name;                name_txt.text=uname;                name_txt.x=410;                name_txt.y=360;                addChild(name_txt);                               // загружаем аватар                var photo = externalXML..photo_big;                var request2:URLRequest=new URLRequest(photo);                photoLoader.load(request2);                photoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);             } else {                trace("Error!");            }        }         private function onLoaded(e:Event):void {            // отображаем загруженный аватар            photoLoader.x = (550-photoLoader.width)/2;            photoLoader.y = (400-photoLoader.height)/2;            addChild(photoLoader);        }     }}
Александрович
МУЛЬТИАККАУНТ!
Сообщения: 86
Зарегистрирован: 20 окт 2011, 22:29

Re: Рабочий чат на as3

Сообщение Александрович »

это не та версия апи
kirikfas
Сообщения: 46
Зарегистрирован: 17 июн 2011, 08:39

Re: Рабочий чат на as3

Сообщение kirikfas »

У вас есть скайп?
Александрович
МУЛЬТИАККАУНТ!
Сообщения: 86
Зарегистрирован: 20 окт 2011, 22:29

Re: Рабочий чат на as3

Сообщение Александрович »

поиском пользоваться не умеешь? вот чат в кадре http://flapps.ru/forum/topic3793.html вот тут метод getProfiles http://flapps.ru/forum/topic992.html

Код: Выделить всё

 http://flapps.ru/forum/ - форум о создании флеш приложений на основе ВКонтакте API */    import flash.net.URLLoader;    import flash.net.URLRequest;    import flash.net.URLVariables;    import flash.net.URLRequestMethod;    import flash.display.*;    import flash.events.*;    import flash.text.TextField;    import fl.containers.UILoader;          var api_id:Number = 1728947;// ID приложения         var url_loader:URLLoader;         var url_request:URLRequest;         var viewer_id;         var secret:String;         var sid:String;        var api_url:String;          var bdate_tf:TextField = new TextField();         var name_tf:TextField = new TextField();        var avatar:UILoader = new UILoader  ;             // получаем данные из flashVars            // id просматривающего приложение            viewer_id = LoaderInfo(root.loaderInfo).parameters.viewer_id;            // secret для генерации сигнатуры            secret = LoaderInfo(root.loaderInfo).parameters.secret;            // id сессии            sid = LoaderInfo(root.loaderInfo).parameters.sid;            // адрес API-сервиса            api_url = LoaderInfo(root.loaderInfo).parameters.api_url;             // для тестирования локально, можно прописать их здесь (брать в исходном коде страницы с приложением)            /*            viewer_id = '1';            secret = 'abcd123456';            sid = 'abcd123456abcd123456abcd123456abcd123456abcd123456abcd1234';            api_url = 'http://api.vkontakte.ru/api.php';            */            // вызываем функцию получения профиля пользователя, просматривающего приложение            getProfile(viewer_id);                function getProfile(uid):void        {            // параметры которые будем передавать в запросе и которые нужны для формирования сигнатуры            // параметры для формирования сигнатуры            var request_params: Object = new Object();            request_params.api_id = api_id;            request_params.method = 'getProfiles';            request_params.format = 'XML';            request_params.v = '3.0';            request_params.fields = 'bdate,photo_big';            request_params.uids = uid;             // параметры для отправки запроса            var variables:URLVariables = new URLVariables();            // часть параметров берем из request_params            for (var j:String in request_params)            {                variables[j] = request_params[j];            }            variables['sid'] = sid;// параметр sid нужно передавать в запросе, но он не используются при создании сигнатуры            variables['sig'] = generate_signature(request_params);// генерируем сигнатуру. Функция generate_signature описана ниже.             // подготавливаем запрос            url_request = new URLRequest(api_url);            // данные будем отправлять POST запросом            url_request.method = URLRequestMethod.POST;            // добавляем параметры в запрос            url_request.data = variables;            // отправляем запрос            url_loader = new URLLoader  ;            url_loader.addEventListener(Event.COMPLETE,onComplete);            url_loader.load(url_request);        }               // запрос выполнен         function onComplete(event:Event):void        {            var response:XML = new XML(url_loader.data);             // выводим дату рождения пользователя            var bdate = response..bdate;            bdate_tf.text = bdate;            bdate_tf.x = 490;            bdate_tf.y = 380;            addChild(bdate_tf);             // выводим имя и фамилию пользователя            name_tf.text = response..first_name + ' ' + response..last_name;            name_tf.x = 410;            name_tf.y = 360;            addChild(name_tf);             // выводим аватарку пользователя            avatar.autoLoad = true;            avatar.scaleContent = false;            avatar.source = response..photo_big;            avatar.move(175,10);            addChild(avatar);        }         // функция генерации сигнатуры        function generate_signature(request_params):String        {            var signature = '';            // сортируем параметры в алфавитном порядке            var sorted_array: Array = new Array();            for (var key in request_params)            {                sorted_array.push(key + "=" + request_params[key]);            }            sorted_array.sort();             // создаем строку параметров;            for (key in sorted_array)            {                signature +=  sorted_array[key];            }            signature = viewer_id + signature + secret;            return MD5.encrypt(signature);}    
это getprofiles как то так, просто убираешь public и private и всё.
kirikfas
Сообщения: 46
Зарегистрирован: 17 июн 2011, 08:39

Re: Рабочий чат на as3

Сообщение kirikfas »

Вы не могли бы сделать это и выложить исходник а то у меня ошибки лезут
Александрович
МУЛЬТИАККАУНТ!
Сообщения: 86
Зарегистрирован: 20 окт 2011, 22:29

Re: Рабочий чат на as3

Сообщение Александрович »

я примерно показал как должно выглядить, сделай всё со второй темы сам..убири не нужное и всё. больше там ничего не надо
Аватара пользователя
psix55
Модератор
Модератор
Сообщения: 1015
Зарегистрирован: 09 дек 2009, 17:16

Re: Рабочий чат на as3

Сообщение psix55 »

6. Если вы не знаете программирования и хотите просто получить готовое решение, то большого смысла задавать этот вопрос на этом форуме нет.
Этот форум не в формате: "Сделайте для меня бесплатно и выложите мне исходник".
Если вы что-то делаете сами и у вас не получается, то только в этом случае вы можете ждать помощи, в виде совета.
Многие люди зарабатывают на создании приложений не малые деньги, никто не будет вам бесплатно и подробно всё разжевывать.
Вряд ли у вас получиться что-то хорошее, если вы не хотите вникать в суть программирования. Хотите - разбирайтесь. Не хотите - ищите разработчиков и платите им.
http://flapps.ru/forum/topic1.html#p918
Ответить