Вообщем решение такое нашел. И как бы даже более логично чем мой первый план по организации запроса к апи ВК. Я изначально предполагал, что после разрешения прав доступа на группу администратором, токен доступа от имени группы возвращается и сохраняется где нибудь в Client API, и таким образом при вызове функций его требующих, подставляется автоматически. Но мои ванильные мечты потерпели фиаско. После получения ключа его нужно пустить в дело, путем передачи на сервер, с которого запущено приложение, а там уже вызывать метода VK API:
Client (JS):
VK.init(function() {
$('#item_addserver').on('click', function() {
// Запрашиваем права доступа
accessGroup();
});
});
function accessGroup() {
VK.callMethod("showGroupSettingsBox", 262144);
VK.addCallback('onGroupSettingsChanged', function(settings, grp_token){
addServer(grp_token);
});
VK.addCallback('onGroupSettingsCancel', function(){
alert("Отказ в доступе");
});
}
// Добавление сервера
function addServer(gtoken) {
$.get('https://mymo.info/api.php',
{
"viewer_id": the_viewer_id,
"secret": the_secret,
"method": "add_server",
"group_access_token": gtoken,
"group_id": the_group_id
},
function(data) {
alert('addserver: ' + data);
});
}
Сервер (PHP):
// ... дополнительная обработка подключений к своему API
/* создает новый сервер */
function add_server() {
//print_r($_GET);
$access_token = clearStr($_GET['group_access_token']);
$group_id = clearInt($_GET['group_id']);
//print "$group_id\n$access_token";
$api_params = array(
"group_id" => $group_id,
"access_token" => $access_token,
"v" => VK_API_VERSION
);
$get_query_string = http_build_query($api_params);
$api_request = 'https://api.vk.com/method/groups.getCallbackServers?'.$get_query_string;
//print $get_query_string;
$api_result = file_get_contents($api_request);
print $api_result;
}
Вот теперь работает :)