Raghvendra Kumar Roy Ответов: 4

Как получить канал NSE с помощью UDP


Привет Я хочу разработать свое собственное приложение для подключения к NSE через .net. для этого я получил IP-адрес,идентификатор пользователя и пароль от NSE. Теперь я знаю, что .net может взаимодействовать с IP-протоколом. Теперь, как я могу подключиться к сайтам NSE, чтобы получить живые котировки(фид) через UDP. Я хочу разработать свое приложение в .net. Какова будет процедура? Есть ли необходимость в дополнительном оборудовании? какой-нибудь протокол?
Может ли кто-нибудь дать мне представление, как я могу подключиться к этому серверу и получать ленту?
Дай мне какую-нибудь идею. это очень срочно.

Goutam Patra

Смотрите мой отредактированный ответ.

4 Ответов

Рейтинг:
20

Goutam Patra

Я не думаю, что кто-нибудь поможет вам в этом отношении. Я могу только дать вам некоторую подсказку.
Если вы хотите подключиться к NSE broadcast server, то просто присоединяйтесь к группе многоадресной рассылки (Google for how to), и вы начнете получать пакеты. После этого вы должны декодировать (обратитесь к документам, предоставленным NSE для получения инструкций ) эти пакеты, чтобы получить живые котировки.


[РЕДАКТИРОВАТЬ]
Видите ли, я не могу дать вам полного решения. Я только что дал тебе подсказку. Так что вы можете хотя бы начать с этого.
[КОНЕЦ РЕДАКТИРОВАНИЯ]


Raghvendra Kumar Roy

Спасибо за это. Теперь у меня есть IP-адрес . когда теперь я связан с этим сервером.
Но я не могу получить никакого пакета. Можете ли вы сказать мне, есть ли какая-то потребность в оборудовании или протоколе? Придется ли мне отправлять идентификатор пользователя и пароль в определенном struture ?

Raghvendra Kumar Roy

Дорогой

Я делаю свое собственное приложение для получения пакета от NSE sever, и я добиваюсь успеха в этом. Но моя проблема в том, что все пакеты находятся в байтовом формате. теперь, как я могу получить живые котировки любой компании(scrips)для декодирования этих пакетов. Когда я сохраняю эти байты в текстовом файле, это выглядит так :

YZ**123 @

Как я могу получить от этого прямую трансляцию? Если кто-нибудь знает, пожалуйста, помогите мне?

Спасибо и с уважением
Raghvendra Кумар Рой

sandiplakhani

привет, вы получили прямую трансляцию от NSE ?

sandiplakhani

тогда, пожалуйста, дайте мне знать, как мы можем получить.
sandipp.lakhani@gmail.com

avm222

привет Raghvendra,
используя udp сокет, затем конечную точку, затем присоединиться к группе многоадресной рассылки, порт, а затем привязать я сделал
все это, кроме данных nse, не приходит туда, где, как и когда я меняю адрес группы многоадресной рассылки и порт, чтобы прослушать мое приложение отправителя listner app, получающее данные. пожалуйста, помогите мне получить широковещательные данные от nse.
с уважением,
американские фондовые индексы

Рейтинг:
2

Vivek Rana

/*
 * File:   main.c
 * Author: root
 *
 * Created on May 17, 2011, 1:51 PM
 */
<pre>*/

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <arpa/inet.h>
#include <errno.h>
#include <math.h>
#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <sys/time.h>
#include <unistd.h>
#include "lzo/lzo1z.h"
#include "struct.h"


#определить MAX_LEN 1024;

int main(int argc, char **argv)
{

инт носок;
инт flag_on = 1;
структура sockaddr_in mc_addr ;
неподписанные символ recv_str[1024];
инт recv_len;
структура mc_req структуру ip_mreq ;
типа char* mc_addr_str;
беззнаковое короткое mc_port;
структура sockaddr_in from_addr;
беззнаковый инт from_len;
mc_addr_str = "233.1.1.11";
mc_port = 34330;

if ((sock = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP)) < 0)
{
perror("socket() failed");
выход(1);
}

если ((что setsockopt(Sock и, флаги, в самого себя &амп;flag_on, оператор sizeof(flag_on))) &ЛТ; 0)
{
perror("setsockopt() failed");
выход(1);
}

memset(&mc_addr,0,sizeof(mc_addr));
mc_addr.значение переменной sin_family = равен af_inet;
mc_addr.sin_addr.s_addr = htonl(INADDR_ANY);
mc_addr.sin_port = htons(mc_port);

если ((&ампер связать(носки,(структура структуры *); mc_addr,оператор sizeof(mc_addr))) &ЛТ; 0)
{
perror("bind() failed");
выход(1);
}

mc_req.imr_multiaddr.s_addr = inet_addr(mc_addr_str);
mc_req.imr_interface.s_addr = htonl(INADDR_ANY);

если((что setsockopt(носок,IPPROTO_IP,IP_ADD_MEMBERSHIP, в(Void*) &ампер;mc_req,оператор sizeof(mc_req))) &ЛТ; 0)
{
perror("setsockopt() failed");
выход(1);
}


для(;;)
{
memset(recv_str,0,sizeof(recv_str));
from_len = sizeof(from_addr);
memset(&from_addr,0,from_len);

если((recv_len = вызов recvfrom(носок, recv_str,1024,0,(структура структуры*)&амп;, &амп mc_addr;from_len))&ЛТ;0)
{
perror("recvfrom() failed");
выход(1);
}
короткий комплен=0;
короткий NOP=0;
memcpy(&compLen,recv_str+4,2);
compLen = ntohs(комплен);
if(compLen > 0)
{
memcpy(&NOP,recv_str+2,2);
NOP=ntohs(NOP);
int i=0;


для(i=0;i<nop;i++)>
{
unsigned char src[compLen];
memcpy(&src,recv_str+6,compLen);
короткое src_len = compLen;
беззнаковый инт dst_len = 1024;
unsigned char dst[1024];
инт rcode в;
unsigned int eCode=0;


rcode в = lzo1z_decompress((lzo_bytep) СРЦ,(lzo_uint)src_len,(lzo_bytep) ДСТ(lzo_uintp)&ампер;dst_len,0);


}
}
}

если((что setsockopt(носок, IPPROTO_IP, IP_DROP_MEMBERSHIP, в(Void*)&ампер;mc_req, оператор sizeof(mc_req))) &ЛТ; 0)
{
perror("setsocketopt() failed");
выход(1);

}
закрыть(носок);
возвращает 0;
}


mehulgoti

плз не могли бы вы мне помочь в этом отношении
Мехул Готи - Контактный Номер : 9409165073

Рейтинг:
2

Vikas Parikh

Привет Raghvendra Кумар Рой,

Можете ли вы предоставить мне IP / код, который вы делали до сих пор?. Может быть, я смогу вам помочь.

vikas_361 @ hotmail.com
Викас


Virender_samer

Привет Викас,

Поскольку у меня такая же проблема, как и у Рагхвендры, не могли бы вы мне помочь, я посылаю вам код на вашем почтовом идентификаторе "vikas_361 @ hotmail.com-пожалуйста, верните меня как можно скорее.

мой почтовый идентификатор: v i r u 1 2 8 4 @ g m a i l . c o m

Member 8977787

Пожалуйста, поделитесь кодом

Virender_samer

понял, я разобрался с этой проблемой.

Рейтинг:
2

pvala

Уважаемые Raghvendra Кумар,

От nse вам нужно приобрести другой тип фидов , фид вы можете получить в udp/tcp сервере , вы можете получить скорость фида из формата tcp/udp , вы получите его в байтовом формате , когда вы получите ответ же ответ доступен в режиме сжатия LZO вы можете распаковать в формате lzo . затем вы можете получить его детали хедера и данные нижнего колонтитула в

В заголовке вы получаете
Сжатие данных или нет , размер упаковщика данных и общая запись.

в деталях записывает.

Пракаш Вала
Старший Инженер-Программист
9033019822


Southmountain

не могли бы вы дать мне знать, как приобрести эти каналы данных?