субота, 19 січня 2013 р.
Використовуємо life:) API за допомогою Ruby
У цій статті я хочу розповісти Вам, як на мові Ruby налагодити взаємодію з life:) API. Для тих хто не в курсі, life:) — український GSM-оператор мобільного зв'язку.
Все почалося тоді, що коли у офіційному твітері life:) з'явилося повідомлення про додаток "Мій life:)" для Android. Мені відразу стало цікаво — а як вони отримують інформацію, якщо не через свій сайт системи самообслуговування для індивідуальних абонентів Мій life:).
Добрі люди підказали мені, як декомпілювати файл apk. Але це не тема цієї статті.
Трохи покопавшись в горах Java-коду, мені вдалося зрозуміти за яким принципом здійснюється робота з сервісом life:). Варто зауважити, що офіційно нікого API у life:) немає. Тому все нижче написане використовуйте на свій страх і ризик.
Результатом цієї роботи стала бібліотека для Ruby - life-api, яка реалізує деякі методи API. Ви можете знайти її на Github.
Отже, що нам знадобиться щоб виконувати запити?
Розглянемо все по порядку.
Всі запити, включаючи авторизацію виконується до адреси https://api.life.com.ua/mobile.
З кожним запитом передається постійний ключ API accessKeyCode. А applicationKey використовується, як секретний ключ для підписання запиту. Про це трохи пізніше.
вівторок, 8 січня 2013 р.
Встановлення Windows XP на віртуальну машину KVM
Процедури установки і налаштування хост-сервера не розглядається в рамках у цієї статті.
Що дано:
Створення образу гостьової машини розміром 20 гігабайт у форматі qcow2. Серед підтримуваних форматів QEMU, цей — найбільш універсальний.
Virtio — це такі спеціальні драйвера, які безпосередньо прокидають фізичне залізо у віртуалку, без емуляції його. Власне це поввино зменшувати навантаження на хост-машину.
У Windows XP, як відомо, немає драйверів Virtio і при установці виникає помилка через відсутність доступу до жорсткого диску.
Для установки драйверів можете використати мій образ дискети Virtio Disk Floppy.
Або створити його власноруч (чи оновити драйвери на дискеті) за допомогою найсвіжіших Virtio Windows Drivers:
Для довідки:
wxp — Windows XP
wnet — Windows Server 2003
Далі переходимо до інсталяції віртуальної машини:
Що дано:
- Хост-система Ubuntu Server 12.04 LTS
- KVM
- Гостьова система Windows XP
Створення образу гостьової машини розміром 20 гігабайт у форматі qcow2. Серед підтримуваних форматів QEMU, цей — найбільш універсальний.
$ qemu-img create -f qcow2 -o preallocation=metadata winxp.qcow2 20G
Virtio — це такі спеціальні драйвера, які безпосередньо прокидають фізичне залізо у віртуалку, без емуляції його. Власне це поввино зменшувати навантаження на хост-машину.
У Windows XP, як відомо, немає драйверів Virtio і при установці виникає помилка через відсутність доступу до жорсткого диску.
Для установки драйверів можете використати мій образ дискети Virtio Disk Floppy.
Або створити його власноруч (чи оновити драйвери на дискеті) за допомогою найсвіжіших Virtio Windows Drivers:
$ dd bs=512 count=2880 if=/dev/zero of=viostor-0.1-49-floppy.img
$ mkfs.msdos viostor-0.1-49-floppy.img
$ mkdir /mnt/floppy
$ sudo mount -o loop viostor-0.1-49-floppy.img /mnt/floppy
$ mkdir /mnt/iso
$ sudo mount -o loop virtio-win-0.1-49.iso /mnt/iso
і скопіювати відповідні файли viostor з ISO на дискету, використовуючи мій образ в якості орієнтира.Для довідки:
wxp — Windows XP
wnet — Windows Server 2003
Далі переходимо до інсталяції віртуальної машини:
$ sudo virt-install -n winxp -r 1024 --disk path=winxp.qcow2,format=qcow2,bus=virtio,cache='writeback' --disk path=viostor-0.1-30-floppy.img,device=floppy -c winxp.iso --video=vmvga --accelerate --os-variant=winxp -v --vnc -w bridge:virbr0
Підписатися на:
Дописи (Atom)