Skip to content

Is it OK? #246

@Dim00

Description

@Dim00
import com.vk.api.sdk.httpclient.HttpTransportClient;
import com.vk.api.sdk.client.*;
import com.vk.api.sdk.objects.*;
import com.vk.api.sdk.objects.messages.*;
import com.vk.api.sdk.client.actors.GroupActor;
import com.vk.api.sdk.exceptions.ApiException;
import com.vk.api.sdk.exceptions.ClientException;
import com.vk.api.sdk.queries.messages.*;
import com.vk.api.sdk.events.*;
import com.vk.api.sdk.events.longpoll.*;

class MyHandler extends GroupLongPollApi
{
	public MyHandler (VkApiClient client, GroupActor actor)
		{ super (client, actor, 25); }
	@Override
	protected void messageNew (Integer groupId, Message message)
	{
		System.out.println (message.getText());
	}
}

public class App
{
	private static final String token = "......";
	private static final int group_id = .......;
	public static void main (String[] args) throws ClientException, ApiException, InterruptedException
	{
		VkApiClient vk = new VkApiClient (HttpTransportClient.getInstance());
		GroupActor actor = new GroupActor (group_id, token);
		MyHandler myhnd = new MyHandler (vk, actor);
		myhnd.run();
		System.out.println ("READY");
	}
}

Запускается. Если написать самой группе, то выводит null, если зайти в диалог с группой и начать печатать сообщения для отправки, то ошибка NullPointerException. Если написать сообщение в беседе, куда добавлена группа (как бот), то нет никакой реакции. Это вообще нормально? Зачем выкладывать такой SDK, что код выше не работает?
П.С. Пробовал переделать так, что сервер LongPoll получается по запросу "client.messages().getLongPollServer(actor)" (т.е. запрос не groups.getLongPollServer, а messages.getLongPollServer; если первое только для событий самой группы, а не тех бесед, куда её добавили как бота), тоже ниего неработает, но это другой вопрос конечно

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions